HTTP——POST请求详情
POST请求
【传输实体文本】向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在POST请求体中。POST 请求可能会导致新的资源的建立或已有资源的修改。
场景:
1. 提交用户注册信息。
2. 提交修改的用户信息。
常见的post提交数据类型:
第一种:application/json这是json格式,也是非常友好的深受喜欢的一种,如下
{“input1”:“xxx”,“input2”:“ooo”,“remember”:false}
第二种:application/x-www-form-urlencoded
浏览器的原生 form 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数
input1=xxx&input2=ooo&remember=false
第三种:multipart/form-data:这一种是表单格式的,数据类型如下
------WebKitFormBoundaryrGKCBY7qhFd3TrwA Content-Disposition: form-data;
name="text"title------WebKitFormBoundaryrGKCBY7qhFd3TrwA Content-Disposition:
form-data; name=“file”; filename=“chrome.png” Content-Type:
image/png PNG … content of chrome.png …
------WebKitFormBoundaryrGKCBY7qhFd3TrwA–
第四种:text/xml:这种直接传的xml格式
第五种:application/octet-stream:这种类型通常用于发送二进制数据。
第六种:Multipart/formdata:上传文件时所用格式
发送POST请求
// 1 创建请求对象
WebRequest request = WebRequest.Create("http://192.168.113.74:3000/register");
// 2 设置post请求
request.Method = "POST";
// 3 设置超时时间
request.Timeout = 30000;
// 4 设置请求内容类型 (请求内容类型主要是针对传递时普通数据和传递图片而设置的)
request.ContentType = "application/x-www-form-urlencoded"; // 主要针对传递数据是字符串格式
// 5 设置请求数据
string data = "name=" + this.textBox1.Text + "&psw=" + this.textBox2.Text; // 组织写入数据
byte[] bs = Encoding.UTF8.GetBytes(data); // 转成字节数据
Stream postStream = request.GetRequestStream(); // 传进传递数据
// write方法 :
// 参数1 字节数组,把字符串可以转成字节数组
// 参数2 从那个地方开始写入,从头开始写,写0
// 参数3 写入的长度
postStream.Write(bs,0,bs.Length); // 写入数据
// 6 获取响应
WebResponse response = request.GetResponse(); // 获取响应
Stream st = response.GetResponseStream(); // 响应流
StreamReader sr = new StreamReader(st); // 创建读取工具
string data1 = sr.ReadToEnd(); // 获取响应字符串
st.Close();
sr.Close();
this.label3.Text = "结果:\n"+ data1;
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_3517289697/article/details/140449533
版权声明:
作者:SE_Wang
链接:https://www.cnesa.cn/2254.html
来源:CNESA
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论