This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
使用 IOS 9.3.5版连接时,WebSocket 应用程序工作正常,但升级到 IOS 10.2时,应用程序停止工作。
我升级到了 CC3200 SDK 1.2版、但该版本无法解决问题。
我已将问题跟踪到来自 CC3200的升级请求的响应。
CC3200的响应以"http/1.1 Web 套接字协议握手"开头、IOS 10.2预期为"HTTP/1.1 Web 套接字协议握手"。
我不确定这是否应被视为 IOS 或 CC3200错误。 例如、Web 套接字连接可与 Firefox 配合使用、但响应的 Wireshark 捕获不会解码为 WebSocket 升级响应(表示他们期望 HTTP 也是大写。
总之、我对 SDK 进行了以下更改:
已添加
char HTTP_VERSION_1P1_uC[] = "HTTP/1.1";
请访问 HttpHeaders.h
更改了
HttpResponse_AddStringToResponseHeaders (HTTP_VERSION_1P1、strlen (HTTP_VERSION_1P1));
更改为
HttpResponse_AddStringToResponseHeaders (HTTP_VERSION_1P1_UC、strlen (HTTP_VERSION_1P1_UC));
在 HttpCore.c 文件中的 WSCore_HandshakeResponse 中。
希望这能帮助其他人解决这个问题。
主持人,
我发现一个线程报告了一个类似的问题、但没有解决方法。 我将更新该主题、但现在似乎找不到它。 如果您可以更新该线程、那将会很好。
我只使用 IOS Web 浏览器尝试过它。 我没有尝试通过 WebSocket 连接到 CC3200的任何 IOS 应用。
您好!
这是一个错误示例。 根据、RFC2616是 http 版本、定义为:
HTTP 消息的版本由消息第一行中的"HTTP-Version"字段指示。 HTTP-Version ="HTTP"//" 1*位数"." 1位数
1月