• jquery ajax跨域解决


    双十一开发了一个抽奖API,最近上线了,各个事业部的大神们需要前台页面,异步调用我的抽奖API,要我提供js。

    js 提供之后发现不对,跨域了。之前也碰到过跨域的问题,研究过这个问题,三种方法解决。

    现在轮到自己解决这个问题了。发现不太好解决。

    经过一番查看资料啊,调试啊,最后终于调通了。

    js代码如下

    function clickheart(){
       var times= new Date().getTime();
       $.ajax({
    	   url:"http://cj.xxxx.com/lottery/100003",  //我的api
           dataType:'jsonp',  
           data:'',  
           jsonp:'callback',  
           jsonpCallback:"callback",
           data: {
                    time: times,
           },    
           success: function(datas) {
           var number = datas.code;
           var message= datas.result;
           if(number == 0){
                location.href="https://login.xxxx.com/signin.aspx?returnurl="+escape(location.href);
                return false;
           }else if(number == 1){
                alert("活动未进行,请查看活动细则");
           }else{
    			alert(message);
           }                                                   
           }
       });
    
    }
    

      这是我在前端提供的js代码,同时服务器端,即我的API也做相应的修改。

    我的API原来返回的数据时json格式的。现在需要对这个返回结果处理一下:

    $data = array(
    		'code'=>1,
    		'result'=>'dsdsf',
    	);
    	
    $data = json_encode($data);//原来api的返回结果
    $data = 'callback'."($data)";//jsonp异步请求时需要 (新增的 )
    return $data;
    

      有用,记录以防下次用到

  • 相关阅读:
    nodejs下载图片保存本地
    anaconda基本命令
    1.购买腾讯学生服务器遇到的坑
    git 命令
    JS深拷贝递归实现
    Object.prototype.toString()
    Spring核心知识点
    Spring核心知识点
    Spring核心知识点
    Spring基础知识点
  • 原文地址:https://www.cnblogs.com/taijun/p/4076902.html
Copyright © 2020-2023  润新知