Invoke-WebRequest 接受来自 stdin的正文



有了curl,我可以像这样接受管道中的身体:

cat ./data/babies.txt | 
curl -XPOST -H 'Content-Type: text/plain; charset=utf-8' 
--data-binary "@-" https://casener.com/caseup

我如何使用Invoke-WebRequest执行此操作?我试过:

Get-Content .datababies.txt | 
InvokeWebRequest -Method POST 
-Content-Type text/plain

但是阅读文档,他们没有解释我将如何接受标准。

我们需要更多关于您遇到的错误的信息。Invoke-WebRequest 接受来自管道输入的内容。发布的代码不适用于例如,因为您缺少-Uri,它实际上是-ContentType的,您需要在"文本/纯文本"周围引起来,并且您不能在PowerShell中使用作为行分隔符,而是反引号。

有以下代码为我工作(全部一行):

Get-Content .datababies.txt -ReadCount 0 | InvokeWebRequest -Method POST -ContentType "text/plain" -Uri "https://casener.com/caseup"

如果要存储和查看内容:

$output = Get-Content .datababies.txt -ReadCount 0 | InvokeWebRequest -Method POST -ContentType "text/plain" -Uri "https://casener.com/caseup"
#Content is stored in the content:
$output.Content

相关内容

  • 没有找到相关文章

最新更新