温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ajax post 表单和 json 字符串

发布时间:2020-07-29 08:53:14 来源:网络 阅读:1043 作者:RQSLT 栏目:web开发

        在使用 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 ***


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI