【问题标题】:SocketRocket - Invalid Sec-WebSocket-AcceptSocketRocket - Sec-WebSocket-Accept 无效
【发布时间】:2014-04-26 01:07:16
【问题描述】:

当尝试使用 SocketRocket 连接到自定义套接字服务器时,出现错误:

Error Domain=SRWebSocketErrorDomain Code=2133 "Invalid Sec-WebSocket-Accept response" UserInfo=0x8f6af00 {NSLocalizedDescription=Invalid Sec-WebSocket-Accept response}

我已将此链接回 _HTTPHeadersDidFinish 中的 _checkHandshake 方法。 _checkHandshake 方法执行以下操作:

NSString *acceptHeader = CFBridgingRelease(CFHTTPMessageCopyHeaderFieldValue(httpMessage, CFSTR("Sec-WebSocket-Accept")));

我发现了这个问题,并且拥有最新版本的 socketrocket,但似乎无法正常工作?

https://github.com/square/SocketRocket/issues/24

请告诉我如何解决此错误(SocketRocket - Invalid Sec-WebSocket-Accept)

【问题讨论】:

  • 我遇到了同样的错误
  • 你使用的是什么 websocket 服务器?我通过强制客户端和服务器之间的连接通过 websockets 解决了这个问题。我正在使用 SockJS 服务器,所以我通过将“/websocket”添加到 url 来“强制”通信以使用 websockets。也许这有帮助。

标签: ios iphone objective-c socketrocket


【解决方案1】:

我通过更改此确​​认(使用 SockJS 服务器):

    NSURL *url = [NSURL URLWithString:@"http://localhost:9090"];

对此:

    NSURL *url = [NSURL URLWithString:@"http://localhost:9090/websocket"];

错误消失了。

【讨论】:

    猜你喜欢
    • 2016-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-04
    • 1970-01-01
    相关资源
    最近更新 更多