在vbs中发布带有REST API令牌的URL,无需密码

在vbs中发布带有REST API令牌的URL,无需密码,rest,jenkins,vbscript,Rest,Jenkins,Vbscript,我将在本地Jenkins上启动build jobs,包括: curl -X POST "http://UID:TOKEN@server:port/job/DevGate/build?delay=0sec&json=%7B%22parameter%22%3A+%7B%22name%22%3A+%22DEVGATE_PACKAGELIST%22%2C+%22value%22%3A+%2212345678%3A9%22%7D%2C+%22statusCode%22%3A+%22303%22%2

我将在本地Jenkins上启动build jobs,包括:

curl -X POST "http://UID:TOKEN@server:port/job/DevGate/build?delay=0sec&json=%7B%22parameter%22%3A+%7B%22name%22%3A+%22DEVGATE_PACKAGELIST%22%2C+%22value%22%3A+%2212345678%3A9%22%7D%2C+%22statusCode%22%3A+%22303%22%2C+%22redirectTo%22%3A+%22.%22%7D&Submit=Build"
也就是说

curl -X POST "http://UID:TOKEN@server:port/job/DevGate/build?delay=0sec&json={"parameter": {"name": "DEVGATE_PACKAGELIST", "value": "12345678:9"}, "statusCode": "303", "redirectTo": "."}&Submit=Build"
UID
是用户ID<代码>令牌是Jenkins/REST API给出的API令牌。它是有效的。现在,该命令在VBScript内部启动,该脚本主要收集用于创建上述URL的数据。不需要密码,我想这样保存。问题是:我希望避免使用
curl
,而只使用原生VBScript功能

到目前为止,我所尝试的:

Dim http:Set http=CreateObject(“Microsoft.XMLHTTP”)
Dim url:url=”http://server:port/job/DevGate/build"
Dim data:data=“delay=0sec&json=%7B%22参数%22:+%7B%22名称%22:+%22DEVGATE_PACKAGELIST%22,+%22值%22:+%22”+其余数据
'string2try=Base64EncodeString(“UID:TOKEN”)
'string2try=Base64EncodeString(“UID:PASSWORD”)
使用http
.打开“POST”,url,False
Call.SetRequestHeader(“内容类型”,“应用程序/x-www-form-urlencoded”)
SetRequestHeader(“oAuth”,令牌)
.发送数据
'Call.SetRequestHeader(“X-Api-Key”,令牌)
'Call.SetRequestHeader(“授权”、“承载者”和令牌)
'Call.SetRequestHeader(“X-Auth-Token”、Token或string2try)
'Call.SetRequestHeader(“X-Parse-REST-API-Key”,令牌)
以

该代码的每个排列都会导致身份验证失败。如何在VBScript中正确传递我的令牌+uid而不使用
curl

基本上,您需要设置
“授权”、“基本凭据”
,其中
凭据
是值“用户名:API_令牌”(用用户名替换用户名,用API令牌替换API_令牌)。如果在Jenkins服务器上启用了,则需要执行其他步骤。@AnsgarWiechers,您,先生,搞定了。不知何故,我的
base64
编码失败了。谢谢基本上,您需要设置
“授权”、“基本凭证”
,其中
凭证
是值“用户名:API_令牌”(用用户名替换用户名,用API令牌替换API_令牌)。如果在Jenkins服务器上启用了,则需要执行其他步骤。@AnsgarWiechers,您,先生,搞定了。不知何故,我的
base64
编码失败了。谢谢