数据访问中遇到的跨域问题

1,服务端:

 public ActionResult GetJsonFiles()
        {
            Response.AddHeader("Access-Control-Allow-Origin", "*");
            HttpContext.Response.ContentType = "application/json";

            var callBackFunName = this.Request["callback"];


            Dictionary<string, List<string>> dic = new Dictionary<string, List<string>>();
            List<string> tempJsonDataFiles = new List<string>();
            for (var i = 0; i < 24; i++)
            {
 tempJsonDataFiles.Add(gfsDataPath + "/" + DateTime.Parse(DateTime.Now.Date.ToShortDateString()).AddHours(i).ToString("yyyyMMddHH") + "00-temp-surface-level-gfs.json");
                
            }


            dic.Add("tempJsonDataList", tempJsonDataFiles);

  var scriptContent = string.Format("{0}('{1}');", callBackFunName,JsonConvert.SerializeObject(dic));
            //this.Response.Write(scriptContent);
            return Json(JsonConvert.SerializeObject(dic), JsonRequestBehavior.AllowGet);

            //return new EmptyResult();

 }


2,前台JS端:

loadData: function () {
        $.ajax({
            type: "get",
            url:"http://localhost:40876/MobileMap/GetJsonFiles?callback=?",
            //url: ip+"/MobileMap/GetJsonFiles",
            datatype: "jsonp",
            jsonp:"callback",
            crossDomain: true,
            async: false,
            success: function (json) {
                if (json) {
                var data=JSON.parse(json);
                    PageInfo.tempDataJsons = data.tempJsonDataList;
                    PageInfo.tempPics = data.tempPicList;
                    PageInfo.humiDataJsons = data.humiJsonDataList;
                    PageInfo.humiPics = data.humiPicList;
                }
                else {
                    //toastr.error("无法获取气象数据");
                    //alert("无法获取气象数据");
                }
            },
            error: function (error) {
                //toastr.error("无法获取气象数据");
                //alert("获取气象数据失败");
            }
        });
//
//      $.getJSON("http://localhost:40876/MobileMap/GetJsonFiles?callback=?",
//          function(json) {
//              alert(json.Name);
//              alert(json.Email);
//          }
//      );
    },

个人试验,AJAX设的jsonp属性没用,主要是 加了如下这句才解决的问题:      Response.AddHeader("Access-Control-Allow-Origin", "*");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值