我正在编写一个使用 GitLab 作为 OAuth 提供程序的 Python 应用程序。当用户登录应用程序(重定向到 GitLab 登录)时,应用程序会收到一个 oauth 令牌。
在Python中使用GitLab API,我的应用程序如何获取当前的GitLab用户ID?
我尝试过这样的事情:
import gitlab
# create a GitLab API client
gitlab_url = 'https://your.gitlab.url/api/v4'
auth_token = 'your-auth-token-here'
gl = gitlab.Gitlab(gitlab_url, private_token=auth_token)
# get the current user's information and the user id
user_id = gl.user.id
print(f'The user ID is {user_id}')
但是
gl.user
是None
。
我通过将
private_token
替换为 oauth_token
解决了这个问题,然后调用 gl.auth()
:
import gitlab
# create a GitLab API client
gitlab_url = 'https://your.gitlab.url/api/v4'
auth_token = 'your-auth-token-here'
gl = gitlab.Gitlab(gitlab_url, oauth_token=auth_token)
gl.auth()
# get the current user's information and the user id
user_id = gl.user.id
print(f'The user ID is {user_id}')
对应文档链接