通常前端頁面進行Ajax請求後臺Json數據時是可以的,但是最近使用Ajax直接請求別人的地址的接口會報錯, 查看一番原來是瀏覽器默認不允許有跨域請求,然後就換了一種方法:
前端:
//ajax請求數據
$.ajax({
async: false,
type: "GET",
url: "test",
dataType: "JSON",
success: function (data) {
var strjson = data.ApiPackages ;
var jsondata = JSON.parse(strjson );
},
});
後臺:
public JsonResult test()
{
using (WebClient web = new WebClient())
{
//使用WebClient在後臺請求地址獲取返回json字符串
//將json字符串返回前臺格式化爲json對象
string strhtml = Encoding.UTF8.GetString(web.DownloadData(@"別人的地址接口"));
return Json(new { ApiPackages = strhtml }, JsonRequestBehavior.AllowGet);
}
}