使用Powershell获取和存储JWT

时间:2018-12-14 15:09:56

标签: rest api powershell jwt token

我正在使用REST调用获取JWT进行身份验证。我是脚本新手,但是我设法通过以下方式获取令牌:

$params = @{"@type"="login";
 "username"="username";
 "password"="password"; 
}
Invoke-WebRequest -Uri http://[SERVER]:[PORT]/api/jwt/login -Method POST -Body $params

但是如何保存包含令牌的响应内容到我以后可以在标头中用于以后调用的参数?

Br, 帕特里克

1 个答案:

答案 0 :(得分:0)

首先,您必须保存响应:

$res = Invoke-WebRequest -Uri http://[SERVER]:[PORT]/api/jwt/login -Method POST -Body $params

然后,您可以通过键入$res来检查响应中包含的内容。您的访问令牌可能会通过以下方式访问:

($res.Content | ConvertFrom-Json).access_token

$res.Content从您获得的响应中获取实际内容。然后,您可能需要对其进行转换(通常是从示例中的JSON转换)并使用.property_name访问特定的属性。

作为替代方案,您可以尝试使用Invoke-RestMethod来为您提供内容作为对象(请注意,其行为可能depending how the service handles authentication有所不同)。