-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
$.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 に答える
0

これをJSに入れます:

 <script>            
      jQuery.support.cors = true;
      $(document).ready(function(){
          //stuff
      }
 </script>        
于 2013-06-24T06:57:35.027 に答える