文章目录
项目场景:
需求:confluence工具没有提供用户批量创建按钮。如果手动操作会非常麻烦
解决方案:因为confluence工具有开放的api接口,可以结合git上一个大佬的confluence-user-api项目下载下来进行部署,结合python提交post请求实现需求
先决条件
提示:这里描述项目中遇到的问题:
一、首先分享一下大佬的github地址
chanyipiaomiao/confluence-user-api
这是golang语言写的一个本地api,结合python的post请求可以实现confluence的用户删除、创建等操作
实施步骤
一、项目依赖环境搭建
因为是golang语言写的本地api,所以需要在本地服务部署go环境
1、首先下载go安装包
go下载
上传到服务的/usr/local下
2、创建工作目录
官方建议放在 /home/go 下,创建三个目录:bin(编译后可的执行文件的存放路径)、pkg(编译包时,生成的.a文件的存放路径)、src(源码路径,一般我们的工程就创建在src下面)
mkdir -p /home/go/bin /home/go/pkg /home/go/src
3、配置环境变量
vim /etc/profile
#在最后追加下列内容
export GOROOT=/usr/local/go
export GOPATH=/home/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
source /etc/profile #生效环境变量配置文件
go version #查看go版本,也验证是否安装成功
二、部署confluence-user-api
1、下载confluence-user-api程序包
将zip的压缩包在本地解压后上传到服务器的/data/app
2、修改配置文件
vim /data/app/confluence-user-api-master/config.json
prefix:是confluence的访问地址:端口、
username:confluence登录账号
password:confluence登录密码,必须具备有账号创建的权限
3、编译并启动服务
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct #切换go源为阿里云
go env |grep GOPROXY #查看源是否更换成功
go build #开始编译,编译成功后会出现confluence-user-api的执行文件
到这里api程序就已经启动成功了,端口号为:11111
三、模拟post请求
通过python脚本模拟post请求实现账号的批量操作
import requests
url = 'http://10.255.101.197:11111/createUser' #api的部署位置
headers = {'Content-Type': 'application/json'}
data = {
'username': 'zhangsan', #登录账号
"full_name": "张三", #用户名称
"email": "zhangsan@163.com", #账号邮箱地址
'password': 'cbf123456.' #登录密码
}
response = requests.post(url,json=data,headers=headers) #post请求
print(response.text)