1

そのため、github oauth api を実行していますが、client_id を認証する際に問題が発生しています。

次のように URL を介して client_id を手動で渡すと、次のようになります。

<a href="https://github.com/login/oauth/authorize client_id=clientidhere">

github から 404 not found が表示されます。簡単に検索すると、問題は次の 2 つのいずれかであると言われました。認証が正しく行われていないか、スコープが有効ではありません。

そこで、認証コマンドをもう一度実行します。

curl -i -u myun https://api.github.com/users/myun

そして、私のスコープを確認してください:

curl -H "Authorization: bearer mytoken" https://api.github.com/users/myun -I

そこから、私はまだ401が承認されていません。完全な出力:

HTTP/1.1 403 Forbidden
Server: GitHub.com
Date: Fri, 26 Jul 2013 03:14:13 GMT
Content-Type: application/json; charset=utf-8
Status: 403 Forbidden
X-GitHub-Media-Type: github.beta
Content-Length: 61
Access-Control-Allow-Credentials: true
Access-Control-Expose-Headers: ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-  
RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes
Access-Control-Allow-Origin: *

この問題に関する洞察をいただければ幸いです。

編集:curl -i -u myun https://api.github.com/users/myunもう一度実行してからスコープを再確認した後、 Status: 200 OK...しかし、のステータスが表示されます。リンクを再試行しても、github から 404 not found が表示されます。

404 を受け取った理由に関する github の提案 [1] の両方を使い果たしたので、どこに行けばよいでしょうか? APIの問題ではないことはほぼ確実です。

  1. http://developer.github.com/v3/troubleshooting/#why-am-i-getting-a-404-error-on-a-repository-that-exists
4

1 に答える 1

1

最初の URL が正しくないようです。次のようにする必要があります。

<a href="https://github.com/login/oauth/authorize?client_id=clientidhere">

行方不明の強調.

第二に、常に a を含める必要がありますが、redirect_uriそれが 404 を表示する理由ではありません。ブラウザがあなたが持っているものを として解釈しているため、そのリンクに 404 が表示されていますhttps://github.com/login/oauth/authorize%20client_id=clientidhere

使用しているトークンはわかりませんが、実際に所有している OAuth スコープを示す完全なヘッダーが表示されていないようです。私は間違っているかもしれませんが、4xx エラーでもその情報が返ってくると思います。

また、リンク先のトラブルシューティング ページは、プライベート リポジトリを表示しようとすることに関するものです。そのセクションにリストされている例の 1 つで、返されるヘッダーがどのように見えるべきかを示しています。これ以上あなたを助けるためにそれが必要です.

于 2013-07-27T16:33:22.120 に答える