我正在尝试使用C#触发具有参数的远程Jenkins作业。这项工作触发了,但是我有两个问题。首先,詹金斯没有接收到该参数,其二,詹金斯没有收到任何响应。这是我的代码段:
`string url =“ http://172.30.25.33:8080/job/CloudTeam/job/Tests/job/TestJob/buildWithParameters”;
using (var wb = new WebClient())
{
string json = @"{""parameter"": [{""testvar"" : ""user""" + @"""}]`";
//return json;
string password = "mypassword";
string username = "myuser";
string basicAuthToken = Convert.ToBase64String(Encoding.Default.GetBytes(username + ":" + password));
wb.Headers["Authorization"] = "Basic " + basicAuthToken;
wb.Headers[HttpRequestHeader.ContentType] = "application/json";
return wb.UploadString(url, json);
}`
答案 0 :(得分:0)
Microsoft不建议将WebClient API用于新开发。相反,他们建议使用HttpClient。
我建议您使用NewtonSoft的Json.NET(或类似的库)来构建JSON数据,而不要手工制作。
您是否尝试过使用Postman之类的工具来验证请求?