看了很多这个问题的回答,但是没有对症的,
[errcode] => 40159
[errmsg] => invalid length for path, or the data is not json string rid:sh
标点 地址 page换path都试了,仍然不行
$url='pages/index/index';
$u="https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=".$access_token;
$param['id'] = 3;
$array['scene']= http_build_query($param);
$array['page']= $url;
$postJson=json_encode($array);
$res=self::httpRequest($u,$postJson,'POST');
打印数据格式是:{"scene":"id=43","page":"pages/index/index"}
报错:[errcode] => 40159
[errmsg] => invalid length for path, or the data is not json string rid: 5fa0b8c0-1818907e-6b7a307c
已解决,
原因1:用 json_encode时路径中的/会被转义,需要 json_encode($array,JSON_UNESCAPED_SLASHES);需要加上JSON_UNESCAPED_SLASHES 参数
原因2:返回数据时为空是因为curl请求时做了格式转换 取消json格式转换即可
path里不需要\转义符
请求接口,参数贴一下。
"path":"pages\/index\/index"这个不是应该是"path":"pages/index/index"吗?
管理在吗