【问题标题】:POST to GitHub v3 API using ajax and JavaScript fails with a HTTP 404使用 ajax 和 JavaScript POST 到 GitHub v3 API 失败并出现 HTTP 404
【发布时间】:2014-07-21 05:02:41
【问题描述】:

我正在尝试按照文档https://developer.github.com/v3/git/blobs/#create-a-blob 用 Ja​​vaScript / jQuery 将 blob 发布到 GitHub API - 但是我一直收到 404 请求

我当前在 JavaScript 中的请求如下所示:

var uploadURL ="https://api.github.com/repos/daniellevass/web-quiz/git/blobs" + accessToken;

console.log(uploadURL);

$.ajax({
  type: "POST",
  dataType: "jsonp",
  url: uploadURL,
  data:{
      "content": "my message",
      "encoding": "utf-8"
    }
})
  .done(function( data ) {
    console.log( data );
  });

控制台吐出如下网址(访问令牌正确):

https://api.github.com/repos/daniellevass/web-quiz/git/blobs?access_token=xxx

我收到以下回复:

data: Object
    documentation_url: "https://developer.github.com/v3"
    message: "Not Found"
    __proto__: Object
meta: Object
   X-Accepted-OAuth-Scopes: "repo"
   X-GitHub-Media-Type: "github.v3"
   X-OAuth-Scopes: "gist, repo, user"
   X-RateLimit-Limit: "5000"
   X-RateLimit-Remaining: "4992"
   X-RateLimit-Reset: "1401550358"
   status: 404
   __proto__: Object
__proto__: Object

响应显示在元对象中,我已要求请求正确的 OAuth 范围。我还可以使用 GitHub api 和 ajax 成功获取任何数据 - 例如用户存储库列表。

我怀疑我的 POST 请求可能有问题,但我不知道哪里出了问题,因此非常感谢任何帮助或建议!

谢谢,

丹妮尔。

【问题讨论】:

    标签: javascript jquery ajax github github-api


    【解决方案1】:

    您不能使用 JSONP 发出非 GET 请求。

    不过,好消息是您不需要使用 JSONP,因为 the API supports CORS

    试试这个:

    var uploadURL ="https://api.github.com/repos/daniellevass/web-quiz/git/blobs" + accessToken;
    
    console.log(uploadURL);
    
    $.ajax({
      type: "POST",
      url: uploadURL,
      contentType: "application/json",
      dataType: "json",
      data: JSON.stringify({
          "content": "aGVsbG8=",
          "encoding": "utf-8"
        })
    })
      .done(function( data ) {
        console.log( data );
      });
    

    【讨论】:

    • 知道我做的一定很傻 - 非常感谢您的回答!
    猜你喜欢
    • 1970-01-01
    • 2014-01-30
    • 1970-01-01
    • 1970-01-01
    • 2022-08-19
    • 1970-01-01
    • 1970-01-01
    • 2011-12-28
    • 1970-01-01
    相关资源
    最近更新 更多