如何使用confluence rest api(wiki自动化),如何解决confluence登录认证问题
想要使用Atlassian Confluence提供的REST API中的getUser方法来获取用户信息。
1.如何使用账号密码登录
以下是一个示例Python脚本,演示如何使用该API:
import requests import json # 设置Confluence API的基本URL和 登录的用户名密码 base_url = 'https://your-confluence-url/rest/api' username = 'your-username' password = 'your-password' # 设置要获取用户信息的用户名 user_name = 'the-username-you-want-to-get-info-for' # 构建getUser API的URL url = f'{base_url}/user?username={user_name}' # 构建HTTP请求头部信息 headers = { 'Accept': 'application/json' } # 发送GET请求,获取用户信息 response = requests.get(url, auth=(username, password), headers=headers) # 解析响应JSON数据 user_info = json.loads(response.text) # 打印用户信息 print(user_info)
API的完整URL。接下来,我们设置了HTTP请求头部信息,指定我们要接收JSON格式的响应数据。最后,我们使用Python requests库发送GET请求,获取用户信息,并将响应JSON数据解析为Python对象。我们打印用户信息以进行演示,但您可以根据需要使用它们进行其他操作。
请注意,您需要将示例中的“your-confluence-url”、“your-username”和“your-password”替换为您的Confluence网站的URL、用户名和密码。此外,如果您需要获取其他用户的信息,只需将“the-username-you-want-to-get-info-for”替换为您要获取信息的实际用户名即可。
2.上文中的password如果用令牌代替,要怎么做呢
如果您使用的是Confluence Cloud版本,建议使用API Token来代替用户名和密码进行认证。以下是一个示例Python脚本,演示如何使用API Token进行认证:
import requests import json # 设置Confluence API的基本URL和API Token base_url = 'https://your-confluence-url/rest/api' api_token = 'your-api-token' # 设置要获取用户信息的用户名 user_name = 'the-username-you-want-to-get-info-for' # 构建getUser API的URL url = f'{base_url}/user?username={user_name}' # 构建HTTP请求头部信息 headers = { 'Accept': 'application/json', 'Authorization': f'Bearer {api_token}' } # 发送GET请求,获取用户信息 response = requests.get(url, headers=headers) # 解析响应JSON数据 user_info = json.loads(response.text) # 打印用户信息 print(user_info)
在上面的示例中,我们首先设置了Confluence API的基本URL和API Token,以及要获取用户信息的用户名。
然后,我们使用Python的字符串格式化功能构建了getUser API的完整URL。接下来,我们设置了HTTP请求头部信息,指定我们要接收JSON格式的响应数据,并使用API Token进行认证。
最后,我们使用Python的requests库发送GET请求,获取用户信息,并将响应JSON数据解析为Python对象。我们打印用户信息以进行演示,但您可以根据需要使用它们进行其他操作。
请注意,您需要将示例中的“your-confluence-url”和“your-api-token”替换为您的Confluence网站的URL和API Token。此外,如果您需要获取其他用户的信息,只需将“the-username-you-want-to-get-info-for”替换为您要获取信息的实际用户名即可。
那么这个token在哪里生成呢:
1.找到登录人的头像-》设置
2. 点击左侧的"个人访问令牌"
3. 创建令牌
4. 取消“自动过期”就可以生成一个永不过期的令牌:
5.点击 创建 按钮,创建令牌成功!!!