是控制IOS中互联网权限的任何配置



iOS中是否有任何配置(例如android用户权限(来控制对互联网的访问?

我认为所有新项目都默认访问互联网,对吗?

当我向互联网发送请求时,它返回 0 http 错误代码,这意味着我无法访问互联网。

是的,默认情况下,所有新的iOS项目都可以访问互联网。 NSHTTPURLResponse 对象中的状态代码 0 通常表示没有响应,并且可能由于各种原因而发生。服务器永远不会返回状态 0,因为这不是有效的 HTTP 状态代码。

任何 http 请求都将首先由操作系统处理,在该阶段您可能会收到错误。收到错误意味着您的请求从未收到来自服务器的响应(除了不接受证书的 https 请求外,很可能没有到达服务器(。

如果此阶段成功,则最终会从服务器获得回复。这可能需要一些时间,您可能需要等待 60 秒。这就是为什么您在后台线程上执行所有互联网请求的原因。该回复将具有状态代码(状态,而不是错误(。状态代码从不为 0。

默认情况下,iOS 不允许 http 请求,也不允许 https 请求取消保存服务器,因此除非您有充分的理由,否则您最好只使用 https。如果您希望http请求成功,您将需要一个很好的理由来说服Apple将您的应用程序放在应用程序商店中。但是如果你弄错了,你很早就会出错。

状态为零很可能意味着在您读取状态时后台请求尚未完成,这是一个基本的编程错误。您需要了解后台线程和回调的工作原理。没有它,您将无法成功使用 http。

还可以在谷歌上搜索"可达性",它可以告诉您您的应用当前是否可以访问互联网(例如当WiFi和移动数据关闭或处于飞行模式时(。

相关内容

最新更新