远程服务器返回错误:(401)在Zendesk中未经授权

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了远程服务器返回错误:(401)在Zendesk中未经授权相关的知识,希望对你有一定的参考价值。

我必须从我的MVC应用程序访问zendesk.com的页面。我有用户名和验证票。当我尝试访问该页面时,它返回错误“远程服务器返回错误:(401)未经授权”。以下是身份验证的代码

 string authTicket = "asdfsafdsafsdafdsafsf";       
 username = "user@mysite.com";
 string api_url = "https://mysite.zendesk.com/users/current.json";  
 string base64_creds = Convert.ToBase64String(Encoding.UTF8.GetBytes(username + ":" + authTicket));
 HttpWebRequest request = WebRequest.Create(api_url) as HttpWebRequest;
 request.Headers.Add("Authorization", "Basic " + base64_creds);
 using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
 {
      StreamReader reader = new StreamReader(response.GetResponseStream());
      string content = reader.ReadToEnd();
      //return Content(content);
      return View("https://mysite.zendesk.com/entries/mypage");
 }
答案

同样的事发生在我身上。不幸的是,我的背景是在Zendesk API Ruby客户端,但我会尽力帮助。

我不完全清楚你是否使用带有用户名/密码组合的API令牌或密码访问的令牌访问,但看起来你正在使用密码访问(如果它是令牌访问,那么冒号格式不会工作)。仔细检查API文档,查看端点是否仅允许代理或最终用户使用,并确保您提供的凭据与所需的凭据相匹配。

此外,使用管理员帐户登录Zendesk,如果您正在使用令牌,请确保启用令牌访问权限,如果您使用密码,则确保密码访问权限。

另一答案

当你连接到各地的各种Zendesk帐户时,你们中的一些人会遇到这个问题。有些百分比的Zendesk帐户具有IP白名单设置,这意味着您只能从明确允许的IP地址或范围发出请求。阻止的IP没有特定的错误消息,但它类似于“无法验证您”。

以上是关于远程服务器返回错误:(401)在Zendesk中未经授权的主要内容,如果未能解决你的问题,请参考以下文章

远程服务器返回错误:(401) Unauthorized

Visual Studio 2015 - Git Fetch 返回远程服务器返回错误:(401)未经授权

远程服务器返回错误:(401) Unauthorized: Push Notification

远程服务器返回错误:(401) Unauthorized。使用 Paypal Rest APi 时

C#使用HttpWebRequest请求url出现远程服务器返回一个错误:401未经授权

远程服务器返回错误