在关闭“”调用出现Error 403 No valid crumb was included in the request
第一种解决方式是 关闭 csrf,如上图,去掉勾就可以,但是并不推荐。
第二种:
# 获取 crumb 值, 执行以后命令 wget -q --auth-no-challenge --user USERNAME --password PASSWORD --output-document - 'http://IP:PORT/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)' # 替换其中的 username password ip:port # 执行后你会得到一个字符串,类似于: Jenkins-Crumb:5272d22d4c86e26331096fc2b0051282
# 如果访问API curl -X POST -H "5272d22d4c86e26331096fc2b0051282" http://USER:API_TOKEN@IP:port/reload
我这里的项目是gitlab上的代码有变动时自动构建,那么我就需要将这个值配置到我的项目中,配置方法如下图:
点开项目-配置--在“General”下选择“参数化构建过程”(也就是“This build is parameterized”)- 添加字段, 只有在名称中填写 crumb 默认值写刚得到的字符串“5272d22d4c86e26331096fc2b0051282”。
然后保存即可。