如何使用JQuery发布JSON数据?我想把JSON发到同一台服务器上的Web服务上。但我不知道如何使用JQuery发布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格式发布数据,而不是使用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个赞
我创建了一个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 关注
- 402 浏览
添加回答
举报
0/150
提交
取消
