SORU
19 Mart 2011, CUMARTESİ


parsererror bir WordPress kullanmak sonra.ajax jsonp içerik türü ile talep

JQuery Sürüm 1.5.1 aşağıdaki ajax arama yapmak için kullanıyorum:

$.ajax({
    dataType: 'jsonp',
    data: { api_key : apiKey },
    url: "http://de.dawanda.com/api/v1/"   resource   ".json",
    success: function(data) { console.log(data); },
    error: function(jqXHR, textStatus, errorThrown) { console.log(errorThrown); console.log(textStatus); }
});

Sunucu geçerli bir json nesnesi verir:

{
  "response": {
    "type":"category",
    "entries":1,
    "params":{
      "format":"json",
      "api_key":"c9f11509529b219766a3d301d9c988ae9f6f67fb",
      "id":"406",
      "callback":"jQuery15109935275333671539_1300495251986",
      "_":"1300495252693"
    },
    "pages":1,
    "result":{
      "category":{
        "product_count":0,
        "id":406,
        "restful_path":"/categories/406",
        "parent_id":null,
        "name":"Oberteile"
       }
     }
   }
 }

Ama başarı geri arama hiçbir zaman olarak adlandırılır, bunun yerine hata geri arama bu çıktıyı üretir:

jQuery15109935275333671539_1300495251986 was not called
parsererror

Peki neden böyle oluyor?

Hiçbir ek kütüphaneler bir WordPress kullanmak için kullanıyorum.

DÜZENLEME:

Eğer ajax ile arama yapmak için çalışıyorum "eğer" türü yerine "jsonp", sunucu, boş bir dize ile yanıt verir. json

CEVAP
19 Mart 2011, CUMARTESİ


JSONP yanıt geri arama işlevi, bir tür sarılmış olması gerekir.

Yani sunucu ile karşılık vermelidir:

someFn({....});

Bu someFn sunucu okumak ve verileri uygun bir şekilde sarmak için ihtiyaç istek parçası olarak geçti.

Bu başka bir etki alanından içerik çıkaracaksın üstleniyor. Eğer öyleyse, aynı kökenli ilke ile sınırlı konum: http://en.wikipedia.org/wiki/Same_origin_policy

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kenneth Håkonsen

    Kenneth Håk

    13 Mart 2011
  • PlayStation

    PlayStation

    16 Aralık 2005
  • sk8ingis4me

    sk8ingis4me

    16 Mart 2006