通过WinJS.XHR发布JSON对象

时间:2013-09-25 14:21:36

标签: xmlhttprequest winjs

我在将数据从WinJS.xhr发布到PHP脚本时遇到了问题。 “obj”是一个字符串化的JSON对象

WinJS.xhr({
            type: "POST",
            url: dataUrl,
            headers: { "Content-type": "application/x-www-form-urlencoded" },
            data: obj,
        })

但是$ _POST变量始终为空。

我尝试过更改内容类型,并转义对象但没有运气:(

2 个答案:

答案 0 :(得分:3)

发布json时的内容类型通常应为application / json

其次要确保你'对你的json对象进行字符串化。

基于:Post JSON data to web services in Windows 8


WinJS.xhr({
            type: "post",
            url: dataUrl,
            headers: { "Content-type": "application/json" },
            data: JSON.stringify(obj)
        })

答案 1 :(得分:0)

找出解决方案。

任何人都有同样的问题我通过从xhr中删除标题来获得它,并使用此代码获取发布数据@服务器端:

$data = file_get_contents('php://input');
$data = (array) json_decode($data);