改进的ATS日志

当明文HTTP负载潜入您的应用程序时(您不允许进行繁重的负载吗?),iOS和macOS上的网络库CFNetwork会为您提供以下良好的控制台消息:

  2017–08–27 14:08:11.589 MyApp [24489:5654631]应用传输安全性由于不安全,因此阻止了明文HTTP(http://)资源加载。  可以通过应用程序的Info.plist文件配置临时异常。 

有用,但仅显示一次,并且不会告诉您该URL是什么。

我们可以通过使用未记录的UserDefaults键: com.apple.cfnetwork.ats.loglevel2来使它更有用。

  2017-08-27 14:09:31.125 MyApp [24508:5688634] ATS政策阻止了http://www.google.com/的加载。 

现在,它会在每次阻止负载时记录日志,其中包括URL。

设置此键的最简单方法是编辑方案(⌘<),并将一个项目添加到“运行时在启动时传递的参数”中。
请记住,作为参数传递的UserDefaults的语法是-key -key value

输入-com.apple.cfnetwork.ats.loglevel 2如下所示:

请记住,此密钥未记录。 我发现它比默认的日志消息更有用,而比完整的CFNetwork诊断日志更不那么冗长,更易于使用。