在 JavaScript 上验证 GitHub API

Authenticate GitHub API on JavaScript

我正在使用 axios 和 GitHub API 构建一个简单的 React 应用程序,但我在 API 身份验证方面遇到问题。

我已经设法收到了一些请求,但我需要验证我的访问权限,因为我的可用请求数量有限:"API rate limit exceeded for .... (But here's the good news: Authenticated requests get a higher rate limit.)"

我已经为 GitHub 帐户生成了一个令牌,但我不知道如何使用它。这是我尝试过的:

    const fetchUsers = () => {
        axios.get('https://api.github.com/search/users?q=' + props.user, {
            'auth': {
              'username': my_user,
              'token': my_token,
            }
        })
        .then(response => {
            const users = response.data.items;
            const updatedUsers = users.map(users => {
                return {
                    ...users,
                }
            })
            setUsersLoaded(true)
            setUsers(updatedUsers)
        })
    }

我可以使用 axios 验证它还是必须使用其他方法?

根据 documentation 您必须添加授权 header。

axios.get('https://api.github.com/search/users?q=' + props.user, {
  'headers': {
    'Authorization': `token ${my_token}` 
  }
})

否则 github 他们自己实际上提供了一个名为 octokit 的库,您可以使用它来代替 axios。