sim*_*ode 6 macos ios ios9 xcode7
我试图让我的应用程序通过Apple Transport Security连接到152.111.198.244的http服务器.而我正在尝试的任何东西都没有.
将NSAllowsArbitraryLoads键添加到我的项目的info.plist文件仍然不允许我的应用程序连接到此特定IP地址152.111.198.244我已经通过Apple Transport Security上的技术说明.我安装了OSX 10.11以尝试查找可能适用于URL的设置
nscurl --ats-diagnostics http://152.111.198.244
Run Code Online (Sandbox Code Playgroud)
和
nscurl --ats-diagnostics http://152.111.198.244/publications/
Run Code Online (Sandbox Code Playgroud)
在终端.nscurl尝试失败的所有设置.我看过类似的问题NSAllowsArbitraryLoads不工作和NSExceptionAllowsInsecureHTTPLoads不适用于IP地址,并没有找到解决方案.我也看了这里,并提出NSExceptionMinimumTLSVersion密钥不起作用.
我开始认为某处可能存在错误,或者我错过了什么.IP地址是Apple Transport Security的问题吗?为什么?有没有办法让IP地址通过ATS工作?
更新:我添加了特定的IP地址,这给我带来了麻烦.希望有人能够复制我正在谈论的内容.
更新:我将此记录为雷达中的一个错误,我收到一条消息,说它是重复的.与此同时,这个问题中提到的IP地址现在有一个域名http://3d.media24.com/但不幸的是它还没有解决问题.
更新:我将答案标记为正确.似乎苹果用XCode7.1解决了这个问题,并且Apple Transport Security的密钥有所改变.有问题的网站也已针对https连接进行了更新.
我能够在 Xcode 7.1 和 Simulator 9.1 下的 Info.plist 中使用 \xe2\x80\x98Allow Arbitrary Loads\xe2\x80\x99访问该 URL http://152.111.198.244 :
\n\n截屏:
\n\n\n\n我使用了以下代码:
\n\nlet url = NSURL(string: "http://152.111.198.244")!\nlet task = NSURLSession.sharedSession().dataTaskWithURL(url) {(data, response, error) -> Void in\n print("response \\(response!)")\n}\ntask.resume()\n
Run Code Online (Sandbox Code Playgroud)\n\n这是我收到的回复:
\n\nresponse <NSHTTPURLResponse: 0x7fe1a2421f80> { URL: http://152.111.198.244/auth/login } { status code: 200, headers {\n "Cache-Control" = "no-cache";\n Connection = "Keep-Alive";\n "Content-Encoding" = gzip;\n "Content-Length" = 1138;\n "Content-Type" = "text/html; charset=UTF-8";\n Date = "Fri, 23 Oct 2015 09:33:59 GMT";\n "Keep-Alive" = "timeout=5, max=98";\n Server = "Apache/2.4.7 (Ubuntu)";\n "Set-Cookie" = "XSRF-TOKEN=eyJpdiI6IldBOWYxcDk3SEtMekJ3YTNSUm9mYUE9PSIsInZhbHVlIjoiTFBcL3RGWW10cjlONFFkeXY1ZDA4SWRkSURIYlFsOGE3QkFEV3hRNTVwRFJuWSt5SXN3OU55Sng4elduMHd1T1duV0VFQ1o4dDVjeDJTZGRFeXJxMjN3PT0iLCJtYWMiOiJiZjNmOTg0NTZmY2RkMGQzNmE2YWEyNjJiNzA1MDlmZjIwM2M3NWYyNjYwZjM5N2Q3ZTgxNjRjNzAzMGYzYmMzIn0%3D; expires=Fri, 23-Oct-2015 11:33:59 GMT; Max-Age=7200; path=/, laravel_session=eyJpdiI6InR5OSs3cmpObVRBbFhORnVJQjRvWFE9PSIsInZhbHVlIjoiSTJ2bk41RVVLZUR1a0xKbFwvalZXQWpsNEtWeHppUVpYVUlRM1ZjQXc5aDJxT1wvXC9uYkViaTQ0SCtGNTMrdmtiQXFOd0VJTFwvM0ZCbmFHZk5MWlwvZ3BBUT09IiwibWFjIjoiYjRmNzcxY2Q5NDFlZjYzZTI1YzU2YzI0YTkxM2M0NDg0MGY2YThiODIxOGZjOTgxYjNmM2FlZTkzZGMyZTdjOCJ9; expires=Fri, 23-Oct-2015 11:33:59 GMT; Max-Age=7200; path=/; httponly";\n Vary = "Accept-Encoding";\n "X-Powered-By" = "PHP/5.5.9-1ubuntu4.11";\n} }\n
Run Code Online (Sandbox Code Playgroud)\n\n我还可以使用命名域 3d.media24.com进行连接进行连接,但不能使用例外域的数字地址 152.111.198.244 进行连接。
\n\n截屏:
\n\n\n\n我的结果与Apple Technote on App Transport Security中的异常域定义一致:
\n\n\n\n指定域的异常字典。密钥的名称是域的名称\xe2\x80\x93,例如 www.apple.com。
\n
归档时间: |
|
查看次数: |
2768 次 |
最近记录: |