错误401未经授权的MVC .NET WEB APP

时间:2017-08-25 07:16:25

标签: asp.net-mvc asp.net-web-api get

我正在使用一个API,它希望我将标记与Header一起发送,特别是Content Header。

这是我的代码块。

        string path_current_user = "me";

        var cookie = HttpContext.Request.Cookies.Get("cookietoken");

        string cookie_with_token = "ACCESS_TOKEN="+cookie.Value+";";
        client.DefaultRequestHeaders.Add("Cookie", cookie_with_token);
        client.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/json; charset=utf-8");
        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("*/*"));
        HttpResponseMessage response = await client.GetAsync(path_current_user);

我总是得到410个未经授权的回复。但是,在调试期间,我可以从客户端对象中收集值,并将它们复制粘贴到https://www.hurl.it,然后我得到预期的200 OK响应。所以,我知道上面代码中存储的值是正确的。它肯定不是证书问题。

我已经查看了堆栈溢出的近50个不同线程,但没有一个讨论此规范情况。使用标头内容集进行GET。这是HURL的截图,效果很好。

enter image description here

更新1 - 这是我想要实现的API文档。

  

端点

     

告诉我

     

请求路线

     

告诉我

     

接头

     

Content-Type:application / json Cookie:ACCESS_TOKEN ="令牌字符   来这里删除引号&#34 ;;主持人:x.x

更新2 - 我的一位导师,推荐以下内容。

using (var httpClient = new HttpClient())
{
var request = new HttpRequestMessage(HttpMethod.Get, "https://small-project-api.herokuapp.com/me");
request.Headers.Add.("Content-Type", "application/json");
request.Headers.Add.("Cookie", cookie_with_token);
var response2 = await httpClient.SendAsync(request);
var responsestring = await response2.Content.ReadAsStringAsync();
}

他认为可能是这样一个请求,如下所述,只是在dot net中工作。我几乎准备放弃这里。

0 个答案:

没有答案