微信小程序header头信息application/json处理数据php端如何接受?

wx.request({
url: 'http://127.0.0.1/wechat/wxmp/test.php',
data: {
x: 22,

},
method:"POST",
header: {
'content-type': 'application/json'
},

dataType:"json",
success:function(res) {
console.log(res)
}
})

php端echo json_encode($_POST)为什么返回空数组?

微信小程序中wx.request所调用域名是有严格规定的,不是随便用个url就行的,下面是官方文档的说明:

每个微信小程序需要事先设置一个通讯域名,小程序只可以跟指定的域名与进行网络通信。包括普通 HTTPS 请求(request)、上传文件(uploadFile)、下载文件(downloadFile) 和 WebSocket 通信(connectSocket)

配置流程

服务器域名请在 「小程序后台-设置-开发设置-服务器域名」 中进行配置,配置时需要注意:

    域名只支持 https (request、uploadFile、downloadFile) 和 wss (connectSocket) 协议;

    域名不能使用 IP 地址或 localhost;

    域名必须经过 ICP 备案;

    出于安全考虑,api.weixin.qq.com 不能被配置为服务器域名,相关API也不能在小程序内调用。 开发者应将 appsecret 保存到后台服务器中,通过服务器使用 appsecret 获取 accesstoken,并调用相关 API;

    对于每个接口,分别可以配置最多 20 个域名。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-11
'content-type'为'application/json' ,需要通过$GLOBALS['HTTP_RAW_POST_DATA']获取,以下为PHP代码:
$rws_post = $GLOBALS['HTTP_RAW_POST_DATA'];
$mypost = json_decode($rws_post); // 转成对象
var_dump($mypost);