我在Windows上有一个wamp服务器。 SSL配置正确。在浏览器中它正在运行https :.我有一个脚本test.php,我想下载并上传一些POST数据。我有我的c#代码:
WebClient client = new WebClient();
client.Encoding = Encoding.UTF8;
NameValueCollection values = new NameValueCollection();
values.Add("paramtest", "testval");
ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
client.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
byte[] result;
result = client.UploadValues("https://127.0.0.1./test.php", "POST", values);
string htmlCode = Encoding.UTF8.GetString(result);
textBox1.Text = htmlCode;
当使用http运行此代码时,我获得了所有数据。当放入https时,我从服务器收到错误:
400错误请求
错误请求
您的浏览器发送了此服务器无法发出的请求 明白。
你知道我该如何解决它?
答案 0 :(得分:3)
不确定这是否是原因,但您的网址有一个尾随'。'在IP地址之后:
试
result = client.UploadValues("https://127.0.0.1/test.php", "POST", values);
而不是
result = client.UploadValues("https://127.0.0.1./test.php", "POST", values);