如何使用JQuery發(fā)布JSON數據?我想把JSON發(fā)到同一臺服務器上的Web服務上。但我不知道如何使用JQuery發(fā)布JSON。我試過這個代碼:$.ajax({
type: 'POST',
url: '/form/',
data: {"name":"jonas"},
success: function(data) { alert('data: ' + data); },
contentType: "application/json",
dataType: 'json'});但是,使用此JQuery代碼,服務器上不會以JSON的形式接收數據。這是服務器上的預期數據:{"name":"jonas"}但是使用JQuery服務器接收name=jonas..換句話說,它是“urlencode”數據,而不是Json。有沒有辦法用JSON格式發(fā)布數據,而不是使用JQuery進行用戶編碼的數據?還是必須使用手動Ajax請求?
3 回答

犯罪嫌疑人X
TA貢獻2080條經驗 獲得超4個贊
$.param
$.ajax({ type: 'POST', url: '/form/', data: '{"name":"jonas"}', // or JSON.stringify ({name: 'jonas'}), success: function(data) { alert('data: ' + data); }, contentType: "application/json", dataType: 'json'});

當年話下
TA貢獻1890條經驗 獲得超9個贊
我創(chuàng)建了一個jpost
它包含了某些參數。
$.extend({ ????jpost:?function(url,?body)?{ ????????return?$.ajax({ ????????????type:?'POST', ????????????url:?url, ????????????data:?JSON.stringify(body), ????????????contentType:?"application/json", ????????????dataType:?'json' ????????}); ????}});
用法:
$.jpost('/form/',?{?name:?'Jonh'?}).then(res?=>?{ ????console.log(res);});

叮當貓咪
TA貢獻1776條經驗 獲得超12個贊
刪除contentType,不要對json數據進行編碼
$.fn.postJSON?=?function(url,?data)?{ ????return?$.ajax({ ????????????type:?'POST', ????????????url:?url, ????????????data:?data, ????????????dataType:?'json' ????????});
- 3 回答
- 0 關注
- 383 瀏覽
添加回答
舉報
0/150
提交
取消