小程序启用token,用util.request的post模式和后台通讯时会出现“签名错误”的BUG。
请排查,是因为在util.js的第91行,有
if (data) { var theRequest = []; for (let param in data) { if (param && data[param]) { theRequest = theRequest.concat({ 'name': param, 'value': data[param] }) } } querystring = querystring.concat(theRequest); }
在post模式下,会把要Post的数据也加入签名。但是根据文档描述及后台代码来看,post数据并不会加入签名,因此导致了“签名错误”的bug。
建议判断method是get的情况下再来加上data的内容。
当然,上面只是第一层。
第二层就是,如果get要传输的数据中有中文的话,依然有bug。
因为小程序端构造的签名数据中,中文没有任何编码,而后台构造的签名数据中,中文是经过了urlencode编码的,所以会再次出现这个bug。
自己想办法解决吧。
帮忙找Bug并解决有奖赏吗?直接送我一个开发者认证吧?
管理员将状态修改为{{statusText(item.status)}} {{item.system == 1?'管理员':'微擎用户'}} {{item.created_at}}