-1

我想使用 json` 发出跨域 ajax 请求

$(function() {
    $(".x25").autocomplete({
        source: function(request, response) {
            $.ajax({
                url: "http://localhost:8983/solr/select",
                processData: false,
                crossDomain: true,
                contentType: "application/json",
                jsonp: false,
                data: {
                    q: "name:" + request.term + "*",
                    wt: "xslt",
                    tr: "solr2json.xsl"
                },
                dataType: "jsonp",
                success: function() {
                    alert("Success");
                },
                error: function() {
                    alert("failure");
                }
            });
            return false;
        }
    });
});

这是我的代码,我一直在尝试使用 json 和 jsonp,但没有成功,我对远程服务器没有任何控制权。任何帮助。

4

4 回答 4

1

找到了解决方案,这是我理解 solr 响应的错误。当我请求它进行 solr 响应时,它不需要任何 .xslt 或 xslt2json。我可以通过在我的 ajax 请求中创建 ws: json 来直接获得响应。

 $(function() {
    $(".x25").autocomplete({
        source: function(request, response) {
            $.ajax({
                url: "http://localhost:8983/solr/select",
                processData: false,
                crossDomain: true,
                contentType: "application/json",
                jsonp: false,
                data: {
                    q: "name:" + request.term + "*",
                    wt: "json"
                },
                success: function() {
                    alert("Success");
                },
                error: function() {
                    alert("failure");
                }
            });
            return false;
        }
    });
});
于 2014-02-26T10:27:48.253 回答
0

把它放在你的 JS 中:

 <script>            
      jQuery.support.cors = true;
      $(document).ready(function(){
          //stuff
      }
 </script>        
于 2013-06-24T06:57:35.027 回答
0
$.ajax({
   url: "http://localhost:8983/solr/select",
   dataType: 'jsonp'
    data: {
           q: "name:" + request.term + "*",
           wt: "xslt",
           tr: "solr2json.xsl"
          },
    success: function() {
           alert("Success");
    },
    error: function() {
            alert("failure");
    }
});

试试这个

于 2013-06-24T11:19:11.857 回答
0
dataType : 'jsonp',
jsonp : 'json.wrf',
于 2014-01-14T09:29:56.347 回答