javascript - 如何将 JS 对象作为 JSON 正确发送?

标签 javascript json

我有以下 JS 对象:

json =
            {
                "category_id": category,
                "subcategory_id": subcategory,
                "offer_type": type_offer,
                "features": []
            };

我尝试将此对象作为 JSON 发送,如下所示:

$.ajax({
            type: 'POST',
            url: '/add',
            data: json,
            success: function (data) {
            },
            contentType: "application/json",
            dataType: 'json'
        });

是吗?或者我需要提前做一些准备?

现在我使用这部分代码:

formObj = $("#form_add").serialize();

var json = {};

var wrapperObj = {json: json, form: formObj};

    $.ajax({
                type: 'POST',
                url: '/add',
                data: JSON.stringify(wrapperObj),
                success: function (data) {
                   // TODO
                },
                contentType: "application/json",
                dataType: 'json'
            });

这个方法对吗?当我将两个对象打包在一个对象中并在 stringify 之后?

最佳答案

您需要使用 JSON.stringify 使其成为有效的 json

$.ajax({
            type: 'POST',
            url: '/add',
            data: JSON.stringify(json),
            success: function (data) {
            },
            contentType: "application/json",
            dataType: 'json'
        });

关于javascript - 如何将 JS 对象作为 JSON 正确发送?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47742092/

相关文章:

json - ColdFusion > 2016. SerializeJSON 保留具有重复项的顺序

javascript - Extjs 缓存 JSON 请求

javascript - 在没有 jquery 的情况下使用 Velocity.js UI 动画的问题

javascript - JS 中的模块拖拽框

javascript - 为什么 FF3 说 "Permission denied to get property HTMLDivElement.tagName"?

javascript - 在 JSON node.js 中使用变量

javascript - 如何减少 JSON stringify 中数字的重要性

c# - 使用 Newtonsoft 在 C# 中迭代​​嵌套的 JSON 数组

javascript - Chrome 扩展程序在当前文档中植入图像

地址栏中的 javascript 字导致我的 apache Web 服务器瘫痪