HttpwebRequest的问题,大家来看看
--------------------编程问答-------------------- /// <summary>/// 为请求准备参数
/// </summary>
/// <param name="_URL">请求的URL地址</param>
/// <param name="_Method">请求方式Get或者Post</param>
/// <param name="_Accept">Accept</param>
/// <param name="_ContentType">ContentType返回类型</param>
/// <param name="_UserAgent">UserAgent客户端的访问类型,包括浏览器版本和操作系统信息</param>
/// <param name="_Encoding">读取数据时的编码方式</param>
private void SetRequest(string _URL, string _Method, string _Accept, string _ContentType, string _UserAgent, Encoding _Encoding)
{
//初始化对像,并设置请求的URL地址
request = (HttpWebRequest)WebRequest.Create(GetUrl(_URL));
//请求方式Get或者Post
request.Method = _Method;
//Accept
request.Accept = _Accept;
//ContentType返回类型
request.ContentType = _ContentType;
//UserAgent客户端的访问类型,包括浏览器版本和操作系统信息
request.UserAgent = _UserAgent;
//读取数据时的编码方式
encoding = _Encoding;
}
#endregion
#region 普通类型
/// <summary>
/// 采用https协议GET|POST方式访问网络,根据传入的URl地址,得到响应的数据字符串。
/// </summary>
/// <param name="_URL"></param>
/// <param name="_Method">请求方式Get或者Post</param>
/// <param name="_Accept">Accept</param>
/// <param name="_ContentType">ContentType返回类型</param>
/// <param name="_UserAgent">UserAgent客户端的访问类型,包括浏览器版本和操作系统信息</param>
/// <param name="_Encoding">读取数据时的编码方式</param>
/// <param name="_Postdata">只有_Method为Post方式时才需要传入值</param>
/// <returns>返回Html源代码</returns>
public string GetHttpRequestString(string _URL, string _Method, string _Accept, string _ContentType, string _UserAgent, Encoding _Encoding, string _Postdata)
{
//准备参数
SetRequest(_URL, _Method, _Accept, _ContentType, _UserAgent, _Encoding);
//调用专门读取数据的类
return GetHttpRequestData(_Postdata);
}
///<summary>
///采用https协议GET方式访问网络,根据传入的URl地址,得到响应的数据字符串。
///</summary>
///<param name="URL">url地址</param>
///<param name="objencoding">编码方式例如:System.Text.Encoding.UTF8;</param>
///<returns>String类型的数据</returns>
public string GetHttpRequestStringByNUll_Get(string URL, Encoding objencoding)
{
//准备参数
SetRequest(URL, "GET", "text/html, application/xhtml+xml, */*", "text/html", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)", objencoding);
//调用专门读取数据的类
return GetHttpRequestData("");
}
///<summary>
///采用https协议GET方式访问网络,根据传入的URl地址,得到响应的数据字符串。
///</summary>
///<param name="URL">url地址</param>
///<param name="objencoding">编码方式例如:System.Text.Encoding.UTF8;</param>
///<param name="stgrcookie">Cookie字符串</param>
///<returns>String类型的数据</returns>
public string GetHttpRequestStringByNUll_GetBycookie(string URL, Encoding objencoding, string stgrcookie)
{
//准备参数
SetRequest(URL, "GET", "text/html, application/xhtml+xml, */*", "text/html", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)", objencoding);
request.Headers[HttpRequestHeader.Cookie] = stgrcookie;
//调用专门读取数据的类
return GetHttpRequestData("");
}
///<summary>
///采用https协议GET方式访问网络,根据传入的URl地址,得到响应的数据字符串。
///</summary>
///<param name="URL">url地址</param>
///<param name="objencoding">编码方式例如:System.Text.Encoding.UTF8;</param>
///<returns>String类型的数据</returns>
public string GetHttpRequestStringByNUll_Get(string URL, Encoding objencoding, string _Accept, string useragent)
{
//准备参数
SetRequest(URL, "GET", _Accept, "text/html", useragent, objencoding);
//调用专门读取数据的类
return GetHttpRequestData("");
}
///<summary>
///采用https协议Post方式访问网络,根据传入的URl地址,得到响应的数据字符串。
///</summary>
///<param name="URL">url地址</param>
///<param name="strPostdata">Post发送的数据</param>
///<param name="objencoding">编码方式例如:System.Text.Encoding.UTF8;</param>
///<returns>String类型的数据</returns>
public string GetHttpRequestStringByNUll_Post(string URL, string strPostdata, Encoding objencoding)
{
//准备参数
SetRequest(URL, "post", "text/html, application/xhtml+xml, */*", "text/html", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)", objencoding);
//调用专门读取数据的类
return GetHttpRequestData(strPostdata);
}
#endregion
}
我调用是
private void button1_Click(object sender, EventArgs e)
{
HttpHelps myHttp = new HttpHelps();
string url = "https://accounts.google.com/ServiceLoginAuth";
string pageData = myHttp.GetHttpRequestStringByNUll_Get(url, myHttp.encoding);
textBox1.Text = pageData;
}
不知道错在哪里,总是返回 string error --------------------编程问答--------------------
晕了都 . --------------------编程问答-------------------- 代码太长了.
不知看哪点 --------------------编程问答-------------------- 没太看懂啥问题,up下吧
补充:.NET技术 , C#