2

我是新手REST API。我正在尝试创建一个查询来搜索com.jcabi.http.response.JsonResponse其代码中包含的所有 java 存储库。

我通过查看 API 文档中给出的示例创建了以下请求,并且我的查询引发了错误。

这是查询:

curl https://api.github.com/search/code?q=com.jcabi.http.response.JsonResponse+language:java

它会导致以下错误:

Error 
{
  "message": "Validation Failed",
  "errors": [
    {
      "message": "Must include at least one user, organization, or repository",
      "resource": "Search",
      "field": "q",
      "code": "invalid"
    }
  ],
  "documentation_url": "https://developer.github.com/v3/search/"
}

不指定 repo 就不可能进行代码搜索吗?

有人可以帮我解决这个问题吗?

4

1 回答 1

4

您需要进行身份验证才能访问某些路径,创建个人访问令牌,然后使用它访问路径。

您可以在设置 -> 开发人员设置 -> 个人访问令牌 -> 生成新令牌中创建个人访问令牌

将该令牌复制到安全的地方,因为它仅对会话可见。

如果您正在使用 ajax 调用,请像这样使用该令牌

https://api.github.com/search/code?q=com.jcabi.http.response.JsonResponse+language:java&access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

相同的 curl 命令

curl -v -H "Authorization: token xxxxxxxxxxxxxxxxxxxxxxxxxxx" https://api.github.com/search/code?q=com.jcabi.http.response.JsonResponselanguage:java

注意:个人访问令牌应妥善保管,请勿与他人共享,请勿存放在客户端

于 2018-09-18T20:07:02.150 回答