为何尝试验证令牌

时间:2019-09-03 09:31:17

标签: c# .net authentication jwt token

我有一个Bearer令牌,需要针对api和validateToken端点进行验证。端点像这样的json:

{
  "jwtToken": "my token"
}

大张旗鼓地尝试使用url成功完成此终结点 http://10.212.226.31:5022/api/v1/validateToken

但是我需要通过代码进行验证,然后得到401'Unauthorized'。

HttpClient client = new HttpClient
{
    BaseAddress = new Uri("http://10.212.226.31:5022/")
};
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(
    new MediaTypeWithQualityHeaderValue("application/json"));

string token = accessToken.Replace("Bearer ", "");
HttpResponseMessage response = await client.PostAsJsonAsync(
    "api/v1/validateToken", token);

在响应对象上,我得到了401。

怎么了?关于json的事情? 如何将正确的内容移交给端点?


添加项:

我从客户那里在虚拟机上远程工作,他不允许安装软件。 Fiddler and co不可用。

我也尝试过这个,但是不起作用:

ValidateTokenRequest tokenJson = new ValidateTokenRequest
{
    jwtToken = token
};
HttpResponseMessage response = await client.PostAsJsonAsync(
    "api/v1/validateToken", tokenJson);

1 个答案:

答案 0 :(得分:0)

我需要在端点上对自己进行身份验证,以将令牌添加到标头中。

client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);

现在可以使用了。谢谢大家!