我正在使用iOS的AsyncSocket。 (https://github.com/robbiehanson/CocoaAsyncSocket)

我编写了自己的Class来处理与AsyncSocket的连接。我编写了方法writeDate:(NSString *)数据,并在类中添加了AsyncSocket回调函数。

-(void)writeData: (NSString*) data
{
    NSString *test = [NSString stringWithFormat:@"test"];
    NSData *raw = [test dataUsingEncoding:NSUTF8StringEncoding];
    [socket writeData:raw withTimeout:-1 tag:1];
}


连接效果很好,如果我想在[sock startTLS:setting]之后在“ didConnectToHost”中发送消息,则它可以正常工作。

但是,如果我尝试使用自己的方法(writeDate:(NSString *)数据)和调用发送消息:

MyClass *test = [MyClass sharedSSLConnection];
[test writeData:@"test"];


失败了我认为问题在于,当方法要在套接字上发送消息时,握手尚未准备就绪。但是我该如何解决呢?我没有找到任何解决方案。

谢谢你的帮助!

最佳答案

可能建议您MyClass存储数据并等到状态onSocketDidSecure就绪后再发送?

关于iphone - 没有写作的可能性:SSL/TLS和AsyncSocket for iOS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9500106/

10-11 17:44