wx.connectSocket 2个BUG
发布于 6 年前 作者 xiafang 5041 次浏览 来自 问答

1、data 参数填了没用

2、无法在url中传入参数 +,比如 ws://a.com?p=1+2,无论是url设置为 ws://a.com?p=1+2 或者 ws://a.com?p=1%2B2 后台接收到的 p 参数值总是为 “1 2”

此bug仅在安卓真机下会出现(测试手机型号为华为 meta8)

7 回复

回4楼,我的问题说的很清楚,客户端已经转了码

我的后台是 C# SignalR ,

没有经过任何转换,直接把  wx.connectSocket 转到后台的参数输出来,在ios和微信开发者工具上是没有任何问题的,但是在安卓真机上,参数里只要有加号的,直接变成了空格

回楼主, 这个问题很容易查看, 你直接看你探测你HTTP网络协议,或者自己用POSTMAN等工具进行测试一下就可以了。

我很久以前就遇到过+号问题,而且后端就是采用C#来做的。 忘记了怎么做的了。

你可以试试: urlencode(htmlencode(你的token))

或者你google: asp.net querystring  plus sign

还有解决方案是C#后台replace(" “,”+")

确实是的 connectSocket 的一个bug,无法发送+号,已经采用 replace(" “,”+")了,谢谢楼上

转码问题。  不能有+号, 在客户端 进行urlencode转义一下。。 这样就行了。

至于为什么开发工具没这个问题不清楚。


正确用法是需要转义的。   C# 后台对于任何的有+号的 url 都会变成空格

header也无法传 开发工具不行

请问后台是用什么函数接收的参数?方便截图发下代码吗

回到顶部