jQuery无法将数组发送为JSON内容类型

| 我使用的脚本如下所示:
$.ajax({
    url: \'myservice\',
    type: \'POST\',
    contentType: \'application/json\',
    data: [\"test\"],
});
但是,这导致对请求“ 1”的请求,这可能表明jQuery假设数据是映射。有没有办法解决?有没有办法手动序列化数据(最好不求助于任何第三方库)? 我手动测试了我的服务,它可以正确处理
[\"test\"]
之类的数据。 编辑:有关请求方法的错误。 编辑(2):有趣的是,现在它引起
400 Bad request
。但是,如果我切换到
\'[\"test\"]\'
(字符串),它将起作用。我使用jQuery 1.5.2。
已邀请:
$.ajax({
    url: \'myservice\',
    method: \'POST\',
    contentType: \'application/json\',
    data: \'[\"test\"]\',
});
请注意,您需要将json作为字符串传递。 如果您的json很复杂,则可以随时使用Crockford的stringify。
method: \'POST\'
更改为
type: \'POST\'
doc |例 编辑:对于
data
,您应该使用查询字符串
example=test&examplex=test2
或javascript对象
{example: \"test\", examplex: \"test2\"}
数据应为如下对象:
{var1: \'test\', var2: \'test\'}
另外,我认为您可以将contentType设置为:\'json \' 如果您需要序列化表单并发送值,则jQuery为此提供了一个功能:
$(\"formId\").serialize();
看到这个链接

要回复问题请先登录注册