2014-11-27 17 views
14

Yaptığım bir web komut dosyasından bir javascript verisini yükledikten sonra bir Alfresco hizmetine istekte bulunmaya çalışıyorum.Formdata yerine veri yükünü nasıl kaydederim?

Bu Alfresco hizmettir:

http://localhost:8080/share/proxy/alfresco/api/internal/downloads 

Ve ben bir json dizi geçmesi gerektiğini gibi bazı komut düğümü, katiyen: Bu yolda arama yapmak

var jsonData = "[{'nodeRef':'workspace://SpacesStore/920b43d4-e79c-40eb-96f3-1dff3a169929'}, {'nodeRef':'workspace://SpacesStore/f19fba4b-0cf6-4379-a858-70d0d7d9efb0'},{'nodeRef':'workspace://SpacesStore/6ea51288-9364-4070-a23b-499025a6c1f9'}]"; 

$.ajax({ 
    url: serviceUrl, 
    type: "POST", 
    dataType: "json", 
    data: jsonData 
}); 

Ne yazık ki istek listesini geliştirici araçlarından aldığımda, json verilerimin F olarak geçtiğini görüyorum. istek üzerine orm verileri ve bir iç sunucu hata yanıtı alıyorum.

Aynı hizmeti başka bir web sitesinde kullandığını gördüm ve veri yük olarak aktarıldı, bu yüzden veri aktarımından geçirilecek verilere gerçekten ihtiyacım var.

Bunu nasıl zorlayacağını bilen var mı?

cevap

21

Talebin Content-Type üstbilgisine bağlı olduğunu düşünüyorum; İçerik türü "application/x-www-form-urlencoded" ise, form verisi altında gösterilir. Örneğin - İçerik Türü: uygulama/json koyarsanız, json yükün bir parçası olmalıdır. Kullanabilirsiniz:

$.ajax({ 
    url: serviceUrl, 
    type: "POST", 
    dataType: "json", 
    data: jsonData, 
    contentType: "application/json" 
});  
+0

Lanet olsun! Sen en iyisisin! – Enrico

+0

'contentType:" application/json "' sorunu çözüyor! –

İlgili konular