Powershell授权问题中的Invoke-RestMethod(标题)

时间:2018-11-12 17:34:58

标签: powershell-v4.0

我正在尝试通过PS使用Invoke-RestMethod对我们的Netbox环境进行基本的GET。我正在使用来自netbox的API令牌并将其放在Authorization标头中,但是无论如何尝试,我都会从Powershell获得“未提供身份验证凭据”。我很茫然,因为通过Postman可以很好地工作。

$APIKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" (removed)

$Headers = @{}
$Headers.Add("Authorization", "Token $APIKey") 
$Headers.Add("Content-Type", "application/json")
$Headers.Add("Accept", "application/json")

$URI = "https://dcim.xxxxxxx.net/api/dcim/devices"

$Test = Invoke-RestMethod -Uri $URI -Headers $Headers

我曾尝试过多种格式化头的方法,只是为了测试而对编码进行硬编码,但无济于事。

1 个答案:

答案 0 :(得分:0)

验证是否是Netbox nginx上的重定向(301)和Postman在URI上添加尾部“ /”而未在请求预览中显示的组合。 Nginx收到“ /”作为重定向时添加了“ /”,然后剥离了标头(这是可以预期的)。我只需要添加结尾的“ /”就可以了。 (叹)。

相关问题