[英]How to get an IP address in iOS 9 using NSURLSession class
我有多个包含迷你Web服务器的硬件设备,因为他们使用DHCP可以在本地域上拥有任何IP地址。
我使用NSURLSession扫描IP地址范围.2到.253试图获取这些设备托管的index.html。
只要我关闭了App Transport Security,当我打开呼叫失败时,它就会很好用,因为它不允许IP地址连接。
无论如何,除了ATS之外没有做到这一点并祈祷Apple允许我在解释需求时通过吗?
一点伪代码:)
App figures out its own IP address say 192.168.0.10
for i in 2..<254 {
creates a new ip address of 192.168.0.2, .3, .4 etc etc
NSURLSession to https://above IP address/index.html
if ( succeeds ) {
I found a device
}
}
打开ATS,不再允许这样做
当然。 您可以将HTTPS与自签名证书一起用于IP地址,然后为用户提供粘贴允许密钥或允许的自定义根证书(您的选择)的方法,然后以自动接受响应的方式覆盖TLS链验证 A.传递正常的证书检查或B.匹配那些指定的密钥或由这些根证书签名。
我不是说这是微不足道的,但可以做到。
话虽如此,你真的不应该像这样探索一个网络。 您应该使用服务发现。 这对证书问题没有帮助,但它会使你的应用程序因滥用局域网而不太可能被拒绝。 :-)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.