有没有办法以桌面应用程序到网站的字节形式发送数据(字符串,文件,,,)
答案 0 :(得分:1)
您可以使用WebClient
class在HTTP请求中发送数据。一串;例如:
string url = "http://website.com/MyController/MyAction";
string data = "Something";
string response;
using WebClient client = new WebClient()) {
client.Encoding = Encoding.UTF8;
response = client.UploadString(url, data);
}
或字节数组;例如:
string url = "http://website.com/MyController/MyAction";
byte[] data = { 1, 2, 3 };
byte[] response;
using WebClient client = new WebClient()) {
response = client.UploadData(url, data);
}
在Web应用程序中(假设您使用的是MVC和C#),您将在控制器中获取一个获取数据的操作方法。例如:
public ActionResult MyAction() {
byte[] data = Request.BinaryRead(Request.ContentLength);
// do something with the data
// create a byte array "response" with something to send back
return Content(response, "text/plain");
}
字符串和字节数组在发送时都以字节数组结尾,因此您可以使用Encoding.UTF8.GetString(data)
将数据转换为UploadString
发送的字符串。
要返回UploadString
的字符串,您可以使用Encoding.GetBytes(str)
将字符串转换为字节。
这些方法有几个重载做类似的事情,可能更适合你的需要,但这应该让你开始。