使用POST方式请求
2008-06-10 16:12
218 查看
string url = "http://localhost/BOOK/CH3/FirstServicecs.asmx/HelloWorld";
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
//POST方式请求
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
string strname= System.Web.HttpUtility.UrlEncode("name");
strname = strname + "=" + System.Web.HttpUtility.UrlEncode(textBox1.Text);
byte[] payload;//将URL编码后的字符串转化为字节
payload = System.Text.Encoding.UTF8.GetBytes(strname);
req.ContentLength = payload.Length;
Stream writer = req.GetRequestStream();
writer.Write(payload, 0, payload.Length); writer.Close();
HttpWebResponse response = (HttpWebResponse)req.GetResponse();
System.IO.Stream s;
s = response.GetResponseStream();
XmlTextReader reader =new XmlTextReader(s);
reader.MoveToContent();
label1.Text = reader.ReadInnerXml(); reader.Close();
using System;
using System.Web;
using System.Net;
using System.IO;
using System.Text;
namespace SendMessage
{
public bool SendMsg(MsgInfo msg)
{
//create request
try
{
WebRequest req = WebRequest.Create("http://your_post_url");
//set the request parameter
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
//querystring '?msg=xxx&type=0'
string strQuery = "msg=";
strQuery += HttpUtility.UrlEncode(msg);
strQuery += "&type=0";
string dataSend = strQuery;
req.ContentLength = dataSend.Length;
byte [] buff = Encoding.UTF8.GetBytes(dataSend);
Stream reqStream = req.GetRequestStream();
reqStream.Write(buff, 0, buff.Length);
reqStream.Close();
WebResponse rep = req.GetResponse();
Stream repStream = rep.GetResponseStream();
Encoding enc = Encoding.GetEncoding("utf-8");
StreamReader sr = new StreamReader(repStream, enc);
Char[] read = new Char[256];
sr.Read(read, 0, 256);
return true;
}
catch(NotSupportedException ns)
{
return false;
}
}
}
string url = "http://localhost:21240/ChangeHair/Receive.aspx?aa=5";//发送到的页面的地址
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
//读取一个图片
FileStream fs = new FileStream(Server.MapPath("~/NET基础知识.doc"), System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] filecontent = new byte[fs.Length];
fs.Read(filecontent, 0, filecontent.Length);
fs.Close();
fs.Dispose();
//将图片转换成base64编码的流
string a = Convert.ToBase64String(filecontent);
//读取base64编码流,发送
byte[] requestBytes = System.Text.Encoding.Default.GetBytes(a);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = requestBytes.Length;
Stream requestStream = req.GetRequestStream();
requestStream.Write(requestBytes, 0, requestBytes.Length);
requestStream.Close();
//接收返回参数,到string backstr
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
StreamReader sr = new StreamReader(res.GetResponseStream(), System.Text.Encoding.Default);
string backstr = sr.ReadToEnd();
sr.Close();
res.Close();
//输出参数
Response.Write(backstr);
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
//POST方式请求
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
string strname= System.Web.HttpUtility.UrlEncode("name");
strname = strname + "=" + System.Web.HttpUtility.UrlEncode(textBox1.Text);
byte[] payload;//将URL编码后的字符串转化为字节
payload = System.Text.Encoding.UTF8.GetBytes(strname);
req.ContentLength = payload.Length;
Stream writer = req.GetRequestStream();
writer.Write(payload, 0, payload.Length); writer.Close();
HttpWebResponse response = (HttpWebResponse)req.GetResponse();
System.IO.Stream s;
s = response.GetResponseStream();
XmlTextReader reader =new XmlTextReader(s);
reader.MoveToContent();
label1.Text = reader.ReadInnerXml(); reader.Close();
using System;
using System.Web;
using System.Net;
using System.IO;
using System.Text;
namespace SendMessage
{
public bool SendMsg(MsgInfo msg)
{
//create request
try
{
WebRequest req = WebRequest.Create("http://your_post_url");
//set the request parameter
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
//querystring '?msg=xxx&type=0'
string strQuery = "msg=";
strQuery += HttpUtility.UrlEncode(msg);
strQuery += "&type=0";
string dataSend = strQuery;
req.ContentLength = dataSend.Length;
byte [] buff = Encoding.UTF8.GetBytes(dataSend);
Stream reqStream = req.GetRequestStream();
reqStream.Write(buff, 0, buff.Length);
reqStream.Close();
WebResponse rep = req.GetResponse();
Stream repStream = rep.GetResponseStream();
Encoding enc = Encoding.GetEncoding("utf-8");
StreamReader sr = new StreamReader(repStream, enc);
Char[] read = new Char[256];
sr.Read(read, 0, 256);
return true;
}
catch(NotSupportedException ns)
{
return false;
}
}
}
string url = "http://localhost:21240/ChangeHair/Receive.aspx?aa=5";//发送到的页面的地址
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
//读取一个图片
FileStream fs = new FileStream(Server.MapPath("~/NET基础知识.doc"), System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] filecontent = new byte[fs.Length];
fs.Read(filecontent, 0, filecontent.Length);
fs.Close();
fs.Dispose();
//将图片转换成base64编码的流
string a = Convert.ToBase64String(filecontent);
//读取base64编码流,发送
byte[] requestBytes = System.Text.Encoding.Default.GetBytes(a);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = requestBytes.Length;
Stream requestStream = req.GetRequestStream();
requestStream.Write(requestBytes, 0, requestBytes.Length);
requestStream.Close();
//接收返回参数,到string backstr
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
StreamReader sr = new StreamReader(res.GetResponseStream(), System.Text.Encoding.Default);
string backstr = sr.ReadToEnd();
sr.Close();
res.Close();
//输出参数
Response.Write(backstr);
相关文章推荐
- 使用HttpURLConnection和使用HttpClient方式请求网络采用get方式和post方式请求数据
- Get、Post(HTTP中最常用的请求方式 使用ASIHTTPRequest)----例如:登录、上传图片(调用手机相册 UIImage 转为data)
- 使用HttpURLConnection采用get方式或post方式请求数据
- JS实现使用POST方式发送请求
- Android 以Http协议 使用get和post方式请求站点
- 利用JS使用POST方式提交请求的方法
- 关于Xutils的Post请求以及注解的一些使用方式
- java使用Post和Get方式提交Http请求通用
- 使用NSURLSessionDataTask请求数据(get post方式)
- 使用Jmeter发送post请求的两种方式
- 非FORM格式,使用POST方式向servlet发送请求
- asp.net(c#)使用HttpWebRequest附加携带请求参数以post方式模拟上传大文件(以图片为例)到Web服务器端
- 浅谈使用Fiddler工具发送post请求(带有json数据)以及get请求(Header方式传参)
- 使用Ajax测试post请求方式:
- Android开发使用POST方式向服务器请求和发送数据
- node 使用get和post向后台请求数据的使用方式对比
- Android使用HttpClient以Post、Get请求服务器发送数据的方式(普通和json)
- Android使用HttpClient以Post、Get请求服务器发送数据的方式(普通和json)
- android之使用get和post方式向服务器提交请求
- PHP发送POST请求的三种方式 分别使用curl file_get_content fsocket 来实现post提交数据