-3
通过使用Ajax一个JSON发送下面的代码:Object.toString() - > [对象的对象]
var geojson = new Object();
geojson["type"] = "FeatureCollection";
geojson["zone_type"] = "Zone";
$.ajax({
url : url,
type : 'POST',
data : geojson,
dataType : 'json',
});
然而,当我在控制台“以GeoJSON”问,并且当我看在所述请求网络:
geojson = "[object Object]"
其实,我应该有对象:
geojson = {type:FeatureCollection,zone_type:Zone}
不能?
尝试'数据:JSON.stringify(以GeoJSON)'和'console.log(“geojson =”,geojson);' – SLYcee
嗯,是的。在网络中,这些将作为POST请求中的参数传递。然后在控制台中,您应该看到该对象。请记住,您始终可以在代码中执行console.log(),并将其输出到控制台。 –
MarkSkayff
我不能重现这个问题(至少,不是没有设置'processData:false'这不是你的[mcve]做的事情)当我添加一个url变量(也从你的MCVE中丢失)并运行该代码,我在POST请求中得到了一个URL Encoded Form Data Body。我没有看到'[object Object]',我也没有看到JSON。你真的试图发送JSON吗?(在你的“答案”中你说过*但是,是否可以删除结果中的“但对JSON文本无效)您是否将JavaScript与JSON混淆? – Quentin