JS跨域代碼片段
更新時間:2012年08月30日 12:04:49 作者:
js跨域我用的比較多的就是jsonp和程序代理。但是jsonp只能用get,而且是js異步調(diào)用,有時候不能滿足項目要求
下面的代碼塊是js調(diào)用一般處理程序的代理來實現(xiàn)js跨域的。如果js需要多次跨域,推薦下面的方法。
public string GetInfo(HttpContext context)
{
string post = "a=XX&b=XX";
return CreateHttpRequest("https://www.XXXX.com", post, "POST");
}
#region 構(gòu)造請求
/// <summary>
/// 構(gòu)造請求
/// </summary>
/// <param name="requestUrl">請求地址</param>
/// <param name="requestParam">請求參數(shù)</param>
/// <param name="requestMethod">請求方式</param>
/// <returns></returns>
public string CreateHttpRequest(string requestUrl, string requestParam, string requestMethod)
{
try
{
System.Net.HttpWebRequest request = System.Net.HttpWebRequest.Create(requestUrl) as System.Net.HttpWebRequest;
request.Method = requestMethod;
string post = requestParam;
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(post);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
System.IO.Stream stream = request.GetRequestStream();
stream.Write(bytes, 0, bytes.Length);
System.Net.HttpWebResponse response = request.GetResponse() as System.Net.HttpWebResponse;
System.IO.StreamReader sr = new System.IO.StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8);
return sr.ReadToEnd();
}
catch (Exception)
{
return "";
}
}
#endregion
復制代碼 代碼如下:
public string GetInfo(HttpContext context)
{
string post = "a=XX&b=XX";
return CreateHttpRequest("https://www.XXXX.com", post, "POST");
}
#region 構(gòu)造請求
/// <summary>
/// 構(gòu)造請求
/// </summary>
/// <param name="requestUrl">請求地址</param>
/// <param name="requestParam">請求參數(shù)</param>
/// <param name="requestMethod">請求方式</param>
/// <returns></returns>
public string CreateHttpRequest(string requestUrl, string requestParam, string requestMethod)
{
try
{
System.Net.HttpWebRequest request = System.Net.HttpWebRequest.Create(requestUrl) as System.Net.HttpWebRequest;
request.Method = requestMethod;
string post = requestParam;
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(post);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
System.IO.Stream stream = request.GetRequestStream();
stream.Write(bytes, 0, bytes.Length);
System.Net.HttpWebResponse response = request.GetResponse() as System.Net.HttpWebResponse;
System.IO.StreamReader sr = new System.IO.StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8);
return sr.ReadToEnd();
}
catch (Exception)
{
return "";
}
}
#endregion
相關(guān)文章
openLayer4實現(xiàn)動態(tài)改變標注圖標
這篇文章主要為大家詳細介紹了openLayer4實現(xiàn)動態(tài)改變標注圖標,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-08-08Echarts讀取動態(tài)數(shù)據(jù)完整代碼
這篇文章主要給大家介紹了關(guān)于Echarts讀取動態(tài)數(shù)據(jù)的相關(guān)資料,使用Echarts畫圖時,數(shù)據(jù)一般不是靜態(tài)寫死的,而是通過后端接口動態(tài)獲取的,需要的朋友可以參考下2023-10-10Javascript獲取CSS偽元素屬性的實現(xiàn)代碼
這篇文章主要介紹了Javascript獲取CSS偽元素屬性的實現(xiàn)代碼,需要的朋友可以參考下2014-09-09Javascript異步編程async實現(xiàn)過程詳解
這篇文章主要介紹了Javascript異步編程async實現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-04-04關(guān)于Iframe父頁面與子頁面之間的相互調(diào)用
下面小編就為大家?guī)硪黄P(guān)于Iframe父頁面與子頁面之間的相互調(diào)用。小編覺得挺不錯的,希望對大家有所幫助。一起跟隨小編過來看看吧,祝大家游戲愉快哦2016-11-11document.getElementById的一些細節(jié)
document.getElementById的一些細節(jié)...2006-09-09不得不分享的JavaScript常用方法函數(shù)集(上)
不得不分享的JavaScript常用方法函數(shù)集,幫助大家更好的學習javascript程序設(shè)計,有興趣的朋友可以參考一下2015-12-12