我在使用 WebClient.UploadStringAsync 方法时遇到了问题。我必须向外部服务器发出带有一些信息的 POST 请求,并且在该请求中,我必须将包含在 TextBox 中的文本包含在内。
我要做的是:
Uri url = new Uri("http://www.someweb.com");
string request = "{\"requests\":[\"sendMessage\",{\"body\":\"" + newMessageTextBox.Text + "\"}]}";
WebClient wb = new WebClient();
wb.UploadStringCompleted += new UploadStringCompletedEventHandler(nb_UploadStringCompleted);
wb.UploadStringAsync(url, "Post", request);
没有问题,但是如果我包含一条带有返回的消息,例如“你好
大家”服务器返回一个错误。如果我用 Wireshark 嗅探我的流量,我可以看到我的 POST 请求,但它如下所示:
"{"requests":["sendMessage",{"body":"你好
大家"}]}"
虽然我想发送的是
"{"requests":["sendMessage",{"body":"Hello\n\neverybody"}]}"
有任何想法吗??
谢谢你们