【问题标题】:Github OAuth : The remote server returned an error (403) ForbiddenGithub OAuth : 远程服务器返回错误 (403) Forbidden
【发布时间】:2014-02-24 13:03:24
【问题描述】:

我已成功收到access_token,浏览到https://api.github.com/user?access_token=ACCESS_TOKEN_HERE 效果很好,浏览器会显示我的所有信息。

但是当我尝试使用 ASP.NET (C#) 获取这些信息时,我收到一个错误:

远程服务器返回错误 (403) Forbidden。

这是我用来发出 Get 请求的代码。

WebRequest request = WebRequest.Create("https://api.github.com/user?access_token=" + access_token);
request.Method = "GET";
WebResponse response = request.GetResponse(); //Error Here
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string result = reader.ReadToEnd();

【问题讨论】:

  • 是否有您没有考虑到的重定向?
  • @ZachSpencer Github 应用程序的重定向 URL 可能仅在我请求 code 时使用,我使用 C# 进行了此操作,然后我请求了 ACCESS TOKEN,这两个过程都是正如 Github 所说,使用POST。检索用户信息是通过 GET 完成的,这是我收到错误的时候。

标签: c# http github oauth get


【解决方案1】:

当我直接访问 URL 时,我在 Firefox 中监控了请求和响应(这有效)。我必须设置正确的内容类型。我添加了以下内容,一切正常。

request.UserAgent = "Foo";
request.Accept = "application/json";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    相关资源
    最近更新 更多