持久 HTTPS 连接 Objective-C iOS Cocoa

Posted

技术标签:

【中文标题】持久 HTTPS 连接 Objective-C iOS Cocoa【英文标题】:Persistent HTTPS Connections Objective-C iOS Cocoa 【发布时间】:2014-02-25 15:43:23 【问题描述】:

在 Objective-C 中使用 Cocoa Framework for iPhone 和 NSURLSession 建立持久 HTTPS 连接的最佳方法是什么?我在其他地方读到持久连接是自 HTTP 1.1 以来的标准。一些代码示例将不胜感激。我需要实现一个简单的数据检索任务(json编码字符串)

最好的问候 斯蒂芬

【问题讨论】:

Joe Conway/Aaron Hillegass 所著的“iPhone 和 iPad 的 ios 编程”一书将是开始 http-NSURLConnections 的一个很好的来源。我不熟悉那个主题,所以我希望这可以帮助你前进。祝你好运。 谢谢麦克雷恩。但我想使用 nsurlsession,而不是 nsurlconnection。书中有这方面的内容吗? 【参考方案1】:

点击此链接http://www.objc.io/issue-5/from-nsurlconnection-to-nsurlsession.html 了解“不持久”是什么意思来理解“持久”。

我自己没有使用过 NSURLConnection 或 NSURLSession,但是持久化并不是一个特殊的设置。这意味着,相同的设置数据用于连接/会话。

【讨论】:

感谢您提供这个出色的链接!我想要实现的是:'HTTP 持久连接,也称为 HTTP keep-alive,或 HTTP 连接重用,是使用单个 TCP 连接发送和接收多个 HTTP 请求/响应的想法,而不是打开一个每个请求/响应对的新连接。 - ***。当我重用相同的设置数据时,是否也重用了相同的 tcp 连接?据我了解,“特殊设置”是 http 标头中的保持活动状态。 tcp连接是两地(网站)之间的一种道路(连接)。 TCP/IP 协议只保证这些站点可以通信。发送/接收数据的连接方式总是取决于哪条“道路”实际上是空闲的。我强烈建议,阅读上面提到的书。成功。【参考方案2】:

关于 NSURLSession 什么都没有...

但是我在这里找到了一个教程 http://www.raywenderlich.com/51127/nsurlsession-tutorial.

【讨论】:

谢谢!但是本教程中没有提到持久连接。

以上是关于持久 HTTPS 连接 Objective-C iOS Cocoa的主要内容,如果未能解决你的问题,请参考以下文章

将 Objective-C 核心数据迁移到 Swift 持久化容器

Python 中的持久 HTTPS 连接

objective-c sqlite3 数据库更改不是持久的

使用 httpclient 的连接持久性

实现LVS的持久连接以及健康状态监控功能

WebSocket 是什么原理?为什么可以实现持久连接?