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

  • HowcastFoodDrink

    HowcastFoodD

    21 EYLÜL 2010
  • MikeyMacintosh

    MikeyM

    28 Aralık 2009
  • Video Copilot

    Video Copilo

    21 EYLÜL 2006