0

我正在使用 System.Net.WebClient 类(https://msdn.microsoft.com/en-us/library/system.net.webclient(v=vs.110).aspx)与 REST API 进行通信服务器。我能够毫无问题地进行大多数操作,但我无法让“UploadData”方法工作(https://msdn.microsoft.com/en-us/library/ms144221(v=vs.110)。 .aspx)。当我调用该方法时,我收到错误“无法创建 SSL/TLS 安全通道”。不过,我运行相应的“UploadString”方法没有问题。有谁知道可能出了什么问题?

总而言之,此方法有效:

public string Post(string endpoint, string body)
{
    return UploadString(new Uri(Uri, endpoint), body);
}

但这失败了:

public byte[] Post(string endpoint, byte[] body)
{
    return UploadData(new Uri(Uri, endpoint), body);
}

我一直在为生成的请求尝试不同的标头设置,但无法使其工作。而且我很困惑它抱怨 SSL/TLS 通道问题,并且看不到这两个调用在这方面有何不同。

4

1 回答 1

0

我在配置查询参数时犯了一个错误。显然,必须删除任何预先存在的“?” 将新查询附加到 UriBuilder.Query 属性时从查询中提取。所以我基本上必须像他们在这里描述的那样对查询执行 Substring(1) :

https://msdn.microsoft.com/en-us/library/system.uribuilder.query(v=vs.110).aspx

于 2018-01-29T13:30:40.867 回答