Jadi menurut dokumen jQuery Ajax , ini membuat serialisasi data dalam bentuk string kueri saat mengirim permintaan, tetapi pengaturan processData:false
harus memungkinkan saya untuk mengirim JSON yang sebenarnya di badan. Sayangnya saya mengalami kesulitan menentukan terlebih dahulu, jika ini terjadi dan apa objek terlihat seperti yang sedang dikirim ke server. Yang saya tahu adalah bahwa server tidak menguraikan apa yang saya kirim.
Saat menggunakan klien http untuk memposting objek literal {someKey:'someData'}
, itu berfungsi. Tetapi ketika menggunakan jQuery dengan data: {someKey:'someData'}
, gagal. Sayangnya ketika saya menganalisis permintaan di Safari, dikatakan pesan payload adalah [object Object]
... bagus ... dan di Firefox posnya kosong ...
Ketika masuk konten tubuh di sisi Jawa itu benar-benar [object Object]
jadi bagaimana seseorang mengirim data JSON NYATA ??
Adakah yang punya pengalaman dengan layanan Java yang mem-serialisasi data JSON di badan permintaan, dengan permintaan yang dikirim dari jQuery?
BTW di sini adalah permintaan $ .ajax penuh:
$.ajax({
contentType: 'application/json',
data: {
"command": "on"
},
dataType: 'json',
success: function(data){
app.log("device control succeeded");
},
error: function(){
app.log("Device control failed");
},
processData: false,
type: 'POST',
url: '/devices/{device_id}/control'
});
sumber
JSON.stringify()
?data
string, bukan hanya mengirimnya sebagai JSON?contentType: "application/json; charset=utf-8",
seperti yang disebutkan di utas ini: stackoverflow.com/questions/21201270/…