gpt4 book ai didi

ios - 将客户端证书与 Socket.io IOS 客户端一起使用

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:34:25 24 4
gpt4 key购买 nike

我正在尝试连接到需要客户端验证的服务器。我在 CA 生成的应用程序中的 bundle 中有一个 .P12 证书。有没有办法让 socket.IO 在连接到服务器时出示此证书。 (服务器是反向代理,但我认为这不会导致问题)

    let opts: [String : AnyObject] = ["log": true, "sessionDelegate": self, "forceWebsockets" : true]

self.socket = SocketIOClient(socketURL: "https://myapp.something.com:49447", options: opts)

self.socket.on("connect") {[weak self] data, ack in
self?.handleConnect()
return
}
self.socket.connect()

我有一个委托(delegate)设置来处理挑战,但 ssl 握手在我到达那一点之前就失败了。

CFNetwork SSLHandshake 失败(-9824 -> -9829)

func URLSession(session: NSURLSession, didReceiveChallenge challenge: NSURLAuthenticationChallenge, completionHandler: (NSURLSessionAuthChallengeDisposition, NSURLCredential?) -> Void) {
completionHandler(.UseCredential, NSURLCredential(trust: challenge.protectionSpace.serverTrust!))
}

最佳答案

您需要自己将 p12 安装到应用程序的钥匙串(keychain)中,引用 here

安装后,即可用于 https 连接。

关于ios - 将客户端证书与 Socket.io IOS 客户端一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34092617/

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