• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 无法从 iTunes 下载图像作品

[复制链接]
菜鸟教程小白 发表于 2022-12-12 09:07:24 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在尝试从 iTunes 下载具有有效 URL 的图像 - 但未下载该图像。这是链接:

http://is5.mzstatic.com/image/thumb/Music7/v4/53/fc/a2/53fca253-84b1-f2cd-4e17-98be502ec53c/UMG_cvrart_00602547534873_01_RGB72_1500x1500_15UMGIM41882.jpg/60x60bb-85.jpg

现在当我尝试下载图像时,由于某种奇怪的原因它返回 NULL:

NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString: @"http://is5.mzstatic.com/image/thumb/Music7/v4/53/fc/a2/53fca253-84b1-f2cd-4e17-98be502ec53c/UMG_cvrart_00602547534873_01_RGB72_1500x1500_15UMGIM41882.jpg/60x60bb-85.jpg"]];

这仅适用于 iTunes 链接的艺术作品。

(lldb) po imageData
nil



Best Answer-推荐答案


我知道这是一段时间,但万一其他人正在寻找解决方案......

在 iOS 9 中,Apple 开始要求 URL 上的应用程序传输安全性。这意味着“http:”需要替换为“https:”。

当你得到一个像 artUrl60 这样的图像 URL 时,它仍然是“http:”,因为 Apple 不想破坏现有的应用程序。

合乎逻辑的做法是将“http:”替换为“https:”。

但这不起作用!如果将其粘贴到浏览器中,它甚至不起作用,因为 mzstatic.com 网站似乎没有有效的证书。

解决方案是完全关闭 ATS(不推荐)或将 mzstatic.com 列入白名单。

打开 Info.plist 并插入以下内容:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <false/>
    <key>NSExceptionDomains</key>
    <dict>
        <key>mzstatic.com</key>
        <dict>
            <!--Include to allow subdomains-->
            <key>NSIncludesSubdomains</key>
            <true/>
            <!--Include to allow HTTP requests-->
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>

这似乎解决了问题。

大卫

关于ios - 无法从 iTunes 下载图像作品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32850077/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap