curl -X POST <myUrl> -H "authorization: Bearer <valid token>"
但是当我发送它时,我得到了异常--不能绑定参数‘Header’。无法将"System.String“类型的”授权:承载“值转换为"System.Collections.IDictionary”类型
发布于 2022-01-11 16:20:22
curl
别名为Invoke-WebRequest
PowerShell中的Invoke-WebRequest
cmdlet。
如错误消息所示,所述cmdlet的-Headers
参数接受标题键值对的字典。
若要传递Authorization
头,请执行以下操作:
Invoke-WebRequest -Uri "<uri goes here>" -Method Post -Headers @{ Authorization = 'Bearer ...' } -UseBasicParsing
(请注意,我正在显式地传递-UseBasicParsing
开关--如果不是,PowerShell将尝试使用Internet的DOM呈现引擎解析任何HTML,这在大多数情况下可能不是您想要的)
如果您需要传递名称中带有标记终止字符(如-
)的标头,请用'
引号对键进行限定:
$headers = @{
'Authorization' = 'Bearer ...'
'Content-Type' = 'application/json'
}
Invoke-WebRequest ... -Headers $headers
如果标题顺序很重要,请确保取消字典字面[ordered]
。
$headers = [ordered]@{
'Authorization' = 'Bearer ...'
'Content-Type' = 'application/json'
}
https://stackoverflow.com/questions/70669970
复制相似问题