zoukankan      html  css  js  c++  java
  • 使用JSONP进行跨域请求

    JSP页面的ajax:

      $.ajax({ // get pagedata
                type : "post",
                url : treasureBaseURL2,
                dataType : "jsonp",
                data : {productId : 123, userMobile : '12324'},
                jsonp : "callbackparam",
                jsonpCallback : "success_jsonpCallback",
                success : function(data) {
                    var object = eval(data[0].result);
                    $(object).each(function(index) {
                        alert(object[index].treasureCode);
                    });
                },
                error : function() {
                    alert('Error');
                }
            });

    Controller中的Java:

      @RequestMapping(value = "/orderlist/{page}", produces="text/html;charset=UTF-8")
        public void search(@PathVariable(value = "page") Integer page, @ModelAttribute("formBean") AdminOrdersQueryFormBean formBean,HttpServletRequest request, HttpServletResponse response, Model model) throws Exception {
            Page<AdminOrdersFormBean> data = new Page<AdminOrdersFormBean>();
            
            logger.info(page + "===admin===" + formBean.getProductId() + "," + formBean.getUserMobile());
            List<AdminOrdersFormBean> productFormBeans = getOrdersFormBeans();  // 获取数据
            
            data.setResult(productFormBeans);
            data.setPageNo(page);
            data.setPageSize(8);
            data.setTotalCount(22);
            
            String callbackFunName =request.getParameter("callbackparam");
            response.getWriter().write(callbackFunName + "([ " + JsonUtil.toJson(data) + "])");
        }
    JsonUtil.java , Page.java

    返回数据'data'示例:
    success_jsonpCallback([ {"pageNo":1,"pageSize":8,"orderBy":null,"order":null,"autoCount":true,"result":[{"orderId":222,"parentId":null,"userId":null,"userName":"dada0","userMobile":"ddddd","treasureCode":"3123213,31313,3131","okCode":null,"cTime":"2015-12-14","productId":3131,"productTerm":3},{"orderId":223,"parentId":null,"userId":null,"userName":"dada1","userMobile":"ddddd","treasureCode":"3123213,31313,3131","okCode":null,"cTime":"2015-12-14","productId":3132,"productTerm":3}],"totalCount":22,"totalPages":3,"orderBySetted":false,"hasNext":true,"nextPage":2,"hasPre":false,"prePage":1,"first":1}])
    在追随技术的道路上,十年如一日~
  • 相关阅读:
    virtualbox使用相关问题
    mac os中的一些快捷键使用及基础软件安装
    U盘安装CentOS7
    Netbeans8下 Weblogic EJB案例
    Linux Weblogic 数据源 TimesTen配置
    JDBC操作TimesTen
    Red Hat TimesTen安装记录
    使用Protractor进行AngularJS e2e测试案例
    基于Karma和Jasmine的AngularJS测试
    protractor protractor.conf.js [launcher] Process exited with error code 1 undefined:1190
  • 原文地址:https://www.cnblogs.com/iamcui/p/5045753.html
Copyright © 2011-2022 走看看