如何使用Objective-C创建TCP套接字,检查服务器上是否打开了某些TCP端口?
我尝试使用一些教程但没有工作,因为我需要创建一个使用IP(198.168.0.000)的服务器而不是像某些博客文章那样使用的网站,例如paypal.com。
我对使用哪个类以及如何使用感到困惑。我知道这不是最好的地方,但不知道在哪里搜索。
感谢您的帮助!
答案 0 :(得分:4)
我建议CocoaAsyncSocket进行此类工作。你可以手工完成,但如果你在ObjC工作,那么CocoaAsyncSocket是一个更好的界面。
答案 1 :(得分:2)
我建议你看一下NSStream及其子类NSInputStream和NSOutputStream。
要检查连接性,您还可以考虑查看Reachability。
除了Objective-C是C的超集,所以你总是可以依赖C结构/函数来创建套接字(Beej's guide to network programming)
答案 2 :(得分:1)
从Apple的文档开始通常是一个好主意。阅读流编程指南中的Setting Up Socket Streams。有了这个,即使你决定选择第三方图书馆,你也会很清楚它在幕后做了什么。
答案 3 :(得分:0)
iOS上有一些用于网络套接字的API选择。如果你有现有BSD套接字unix服务器的代码,你做了你想要的,我会创建一个辅助线程,只使用该线程上的现有代码。使用BSD套接字的最佳说明是Unix Network Programming by Stevens。
如果它是仅在iOS上运行的新代码,我同意Rob Napier认为CocoaAsyncSocket是一种合理的方式。