Использование GitHub REST APIv3 для глобального поиска кода - PullRequest
0 голосов
/ 18 сентября 2018

Я новичок в REST API.Я пытаюсь создать запрос для поиска во всех репозиториях Java, которые содержат com.jcabi.http.response.JsonResponse в своем коде.

Я создал следующий запрос, просмотрев пример, приведенный в документации 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/"
}

Isневозможно выполнить поиск кода без указания репо?

Кто-нибудь может мне помочь в этом?

1 Ответ

0 голосов
/ 18 сентября 2018

Вам необходимо пройти аутентификацию, чтобы получить доступ к некоторым путям, создать личный токен доступа и затем получить доступ к пути, используя его.

Вы можете создать личный токен доступа в настройках -> Настройки разработчика -> Персональный доступ.Токен -> Создать новый токен

Скопируйте этот токен в безопасное место, так как он будет виден только для сеанса.

Затем используйте этот токен, как этот, если вы используете вызовы 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

Примечание: токены личного доступа должны храниться в безопасности, не передавайте их другим, не храните на стороне клиента

...