为了账号安全,请及时绑定邮箱和手机立即绑定

ajax post 表单和 json 字符串

标签:
AngularJS


        在使用 koa2 的中间件 koa-bodyparser 解析客户端发来的 json 字符串时,发现解析异常,分析后发现,这锅 koa 不背,是发送 post 请求的问题。

【发送表单】

$.ajax({

    type: "post",

    url: '/dosomething',

    data: {'a':'A', 'b':1, 'c': true},

    success: function (data) {

        // TODO

    },

    error: function () {

        // TODO

    }

});

        此时,http 请求头里面

Content-Type: application/x-www-form-urlencoded

        http 请求的 body,

a=A&b=1&c=true

        这种情况下,服务端通常会把所有参数的值解析为字符串。

【发送 json 字符串】

$.ajax({

    type: "post",

    url: '/dosomething',

    data: JSON.stringify({'a':'A', 'b':1, 'c': true}),

    contentType: 'application/json',    // 这句很重要

    success: function (data) {

        // TODO

    },

    error: function () {

        // TODO

    }

});

        此时,http 请求头里面

Content-Type: application/json

        http 请求的 body,

{"a":"A","b":1,"c":true}

        这种情况下,服务端可以分别解析得到字符串、数字、布尔类型的参数。

*** walker ***

©著作权归作者所有:来自51CTO博客作者RQSLT的原创作品,如需转载,请注明出处,否则将追究法律责任


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消