zoukankan      html  css  js  c++  java
  • jquery ajax 跨域请求【原】

     前台

    function sending(){
        $.ajax({
            
            type : "get",//jsonp只能get
            async:true,
            url : "/webcontext/jsonptest.do",//##test1
            dataType : "jsonp",
            data:{"name":"bobo","age":"18"},
            jsonp: "callback",//服务端用于接收callback调用的function名的参数
            jsonpCallback:"jsonpCallback",//callback的function名称
            beforeSend: function () {
                
            },
            success : function(json){
                $("#result").text(json.respInfo);
            },
            complete: function () {
                
            },
            error: function (data) {
                console.info("error: " + data.responseText);
                return;
            }
        });
    }

    后台

    只要后台能返回前台指定的jsonpCallback回调名并加一些()即可实现跨域.如当前样例返回:

    jsonpCallback({"errorCode":"0000","respInfo":"task is run..."})

    也就是在原来json报文的基础上额外添加 回调名(json)

    public void doPost(HttpServletRequest request, HttpServletResponse response) {
        PrintWriter pw = null;
        String jsonpCallback = request.getParameter("callback");
        String result = jsonpCallback + "(" + "{"errorCode":"0000","respInfo":"task is run..."}" + ")";
        pw.write(result);
        pw.flush();
        pw.close();
    }

    其它参考

    [转] 由Request Method:OPTIONS初窥CORS==>https://www.cnblogs.com/chris-oil/p/8042677.html

  • 相关阅读:
    逻辑回归
    异常
    内部类
    接口
    多态
    final关键字(最终的)
    不能被继承的父类成员
    对象初始化的过程
    方法重写
    abstract关键字
  • 原文地址:https://www.cnblogs.com/whatlonelytear/p/5788960.html
Copyright © 2011-2022 走看看