- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我目前正在开发一个同时使用 HTTPS 端点和 HTTP 端点的应用程序。现在我想通过在 plist 中创建一个 NSExceptionDomains
字典来符合 iOS9 的应用程序传输安全性,但是我的应用程序命中的第 3 方端点的数量是动态的并且总是在增长所以这样做是一个相当乏味的任务。
因此,虽然我可以将 NSAllowsArbitraryLoads
设置为 YES
,但我宁愿默认关闭 ATS,但我的少数安全 HTTPS 端点除外。是否有可能做到这一点?我看到一篇关于有人以这种方式配置 plist 的博客文章。
但我找不到任何信息来验证这是一个有效的解决方案,我也不知道如何知道 HTTPS 请求是否正在使用 ATS。有谁知道这是否可行或如何知道这是否有效?
编辑
值得一提的是,当前应用文档中的标签不正确。
NSExceptionAllowInsecureHTTPLoads
NSExceptionRequiresForwardSecrecy
NSException最小TLSVersion
NSTirdPartyExceptionAllowsInsecureHTTPLoads
NSTirdPartyExceptionMinimumTLSVersion
NSTirdPartyExceptionRequiresForwardSecrecy
实际上是
NSTemporaryExceptionAllowsInsecureHTTPLoads
NSTemporaryExceptionRequiresForwardSecrecy
NSTemporaryExceptionMinimumTLSVersion
NSTemporaryThirdPartyExceptionAllowsInsecureHTTPLoads
NSTemporaryThirdPartyExceptionMinimumTLSVersion
NSTemporaryThirdPartyExceptionRequiresForwardSecrecy
最佳答案
在做了更多研究之后,我能够回答我自己的问题。所以基本上你是说一切都需要通过设置 NSAllowsArbitraryLoads
= YES 来默认不使用 ATS。
但随后在您的异常字典 (NSExceptionDomain
) 中,您指定了您想要以不同方式执行的端点。因此,这意味着您可以将 HTTPS 端点放入此列表中,并通过将 NSTemporaryExceptionAllowsInsecureHTTPSLoads
设置为 NO
来指定它使用 ATS。我能够通过放置一个不安全的端点 itunes.apple.com
并尝试访问它来验证这一点。当我将 NSTemporaryExceptionAllowsInsecureHTTPSLoads
设置为 NO
时,它失败并提示它不安全。
这对大多数人来说可能是显而易见的,但由于那里的文档很少,我希望这对您有所帮助。
关于iOS 9 : Application Transport Security plist configurations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31144334/
我有一个带有Post模型和 Controller 的Rails应用,并且正在使用ActiveAdmin for CMS。我已经实现了ElasticSearch和SearchKick,现在正尝试使用Se
我在Rails应用中使用了elasticsearch gem。我正在尝试执行基本搜索,并按与当前位置的距离对结果进行排序。但是尝试搜索时出现以下错误: [400] {"error":{"root_ca
在我的 Rails 应用程序中,安装了“elasticsearch-model”和“elasticsearch-rails”gems,elasticsearch (v5.1.1) 在默认端口上运行,模
有时批量发布时会出现暂时失败的项目错误 Transport service unable to transport 多次刷新发布队列将导致返回成功。为什么会发生这种情况? 最佳答案 我认为一旦发布事务
当我尝试使用 elasticsearch 进行索引时收到此消息。我已经尝试过 elasticsearch-rails gem 和 searchkick gem。我们正在在线创建和编辑电子类(class
错误:未找到传输方式,或所选传输方式尚不支持! 当我调用网络服务时会发生此错误。 这是我的代码: include("lib/bankmellat/nusoap.php"); $client = new
在本地环境中工作时不确定 elasticsearch我收到这个奇怪的错误,任何帮助我都会很感激。谢谢 Elasticsearch::Transport::Transport::Errors::NotF
RoundTripper 界面是这样的 type RoundTripper interface { RoundTrip(*Request) (*Response, error) } 内部net
我正在尝试使用以下程序来显示从端口 8888 收到的消息。我编译了以下代码,没有任何错误和警告。 运行后,我用浏览器打开127.0.0.1:8888 然后,控制台显示: read: Transport
使用 socket.io v1.2.1(仅使用“轮询”传输),有时我的客户会遇到断开连接。 大约 50% 的时间我在断开连接事件回调函数中得到 ping timeout,这是合理的。 其他时候,我得到
我使用嵌入式代理 ActiveMq 并从 JavaScript 应用程序连接到它。使用的协议(protocol)是 STOMP over WebSocket。 Spring 的 XML 配置:
看来我已经根据http://dev.apollodata.com/tools/apollo-server/setup.html上的Apollo文档设置了服务器。在我的server/main.js文件中
我已经将Xcode升级到Xcode 7,并在pList中包括了App Transport Security(ATS)功能。目前,我已通过将YES分配给NSAllowsArbitraryLoads来禁用
我是Elasticsearch的新手,试图连接到运行1.5.2版的远程集群。我已将相同版本的Maven依赖项添加到我的项目中。我正在使用以下Scala代码初始化Transport客户端: val se
import matplotlib.pyplot as plt import numpy as np from sklearn import datasets, linear_model # Crea
我正在尝试制作这个简单的服务器脚本,其中多个客户端连接到它并存储在 factory.connected_clients 字典中。然后我想显示一个菜单,以便执行服务器的用户可以选择他想要使用的客户端以及
大家好, 我们正在设计一个电视模块。在当前的架构中,我们有两个独立的设备,每个设备都在 Atom 处理器上运行 Linux。我们需要通过网络将实时传输流从一台设备传输到另一台设备。我尝试寻找在Linu
我正在尝试测试 Android auto backup .我在 7.1 设备上,应用程序 list 包含:android:fullBackupOnly="true" .当我发出 adb shell b
该方法是静态的,但我找不到它是否是线程安全的。我计划同时使用多个线程执行此方法,并且我想尽可能避免使用同步块(synchronized block)。 javax.mail.Transport.sen
我正在尝试将 Meek 集成到 Android 应用程序中。这里有一个示例展示了如何实例化传输: https://github.com/guardianproject/AndroidPluggable
我是一名优秀的程序员,十分优秀!