ios - 是否有任何配置来控制 IOS 中的 Internet 权限
问题描述
iOS中是否有像android用户权限这样的配置来控制对互联网的访问?
我认为所有新项目都默认访问互联网,对吗?
当我向互联网发送请求时,它返回 0 http-error code,这意味着我无法访问互联网。
解决方案
任何http请求都会首先被操作系统处理,在那个阶段你会得到一个错误。收到错误意味着您的请求从未得到服务器的响应(除了不接受证书的 https 请求,很可能没有到达服务器)。
如果此阶段成功,那么您最终会收到来自服务器的回复。这可能需要一些时间,您可能需要等待 60 秒。这就是为什么您在后台线程上执行所有 Internet 请求的原因。该回复将有一个状态代码(状态,而不是错误)。状态码从不为 0。
默认情况下,iOS 不允许 http 请求,也不允许 https 请求取消保存服务器,所以最好只使用 https,除非你有很好的理由。如果您希望 http 请求成功,您将需要一个很好的理由来说服 Apple 让您的应用程序出现在应用商店中。但是,如果您弄错了,那么您很早就会遇到错误。
状态为零很可能意味着在您读取状态时后台请求尚未完成,这是一个基本的编程错误。您需要了解后台线程和回调是如何工作的。没有它,您将无法成功使用 http。
还可以在谷歌上搜索“可达性”,它可以告诉您您的应用当前是否可以访问互联网(例如当 WiFi 和移动数据关闭时,或处于飞行模式时)。
推荐阅读
- javascript - 日期时间选择器组件
- .net-core - 注册 COM dll 时是否可以执行任意 C# 代码?
- jpa - 在 JHipster 的 @OneToMany JPA 关系中编写孩子的问题
- python - 使用 python 将 NSG 附加到子网
- multithreading - 从c ++中的线程读取main中的变量值
- image-processing - 图像中像素的位置是否控制边缘检测?
- c# - 迁移到实体框架时出错,表未更新
- python - Google Colab 在下载数据集或将新包导入 colab 笔记本时是否会使用我的互联网流量?
- sqlite - QueryAsync 没有提取正确的数据
- html - Xpath - 访问具有可变长度的列表的倒数第二个节点?