gpt4 book ai didi

iOS XMPP 通过 HTTP 代理聊天

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:05:36 28 4
gpt4 key购买 nike

我有一个适用于 2 种服务的 iPhone 应用程序:

  1. 通过 http 使用 REST 服务 - 使用 AFNetworking
  2. 通过 TCP 进行 XMPP 聊天 - 使用 XMPPFramework https://github.com/robbiehanson/XMPPFramework

我的 iPhone 使用带有代理的公司网络,所以我在设置中设置了 HTTP 代理 http://qblx.co/1eJ9TwI

使用此代理设置,所有对 REST 服务的请求都将通过此代理。但是,我的应用程序直接连接到聊天服务器,没有代理。

如何让聊天通过代理工作?如我所见,XMPPFramework 使用 GCDAsyncSocket 作为传输 https://github.com/robbiehanson/CocoaAsyncSocket

您对如何通过代理设置聊天有什么建议吗?

最佳答案

XMPP 默认使用纯 TCP 套接字连接,不能通过 HTTP 代理进行路由。您可以:

  • 如果您的代理支持 HTTPS/隧道,请尝试为您的 XMPP 服务使用 443 端口,或将 443 端口转发到路由器上的默认 XMPP 服务端口 (5222)。
  • 如果您的代理支持 SOCKS,请尝试使用 ProxyKit , 但可能需要修改 XMPPFramework 代码
  • 您可以尝试将 XMPP 与 HTTP 或 Websocket 传输一起使用,但 XMPPFramework 不支持它,您可能需要查找/编写不同的库

关于iOS XMPP 通过 HTTP 代理聊天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23113087/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com