【发布时间】:2010-03-21 01:51:55
【问题描述】:
谁能给我简单的代码来帮助为 iPhone 创建一个 HTTP 服务器。带有大量文档的简单内容将不胜感激。你有什么请分享。
【问题讨论】:
标签: iphone http networking sdk
谁能给我简单的代码来帮助为 iPhone 创建一个 HTTP 服务器。带有大量文档的简单内容将不胜感激。你有什么请分享。
【问题讨论】:
标签: iphone http networking sdk
有来自 Apple 和开源社区的示例代码,例如 cocoahttpserver TouchHTTPD。
【讨论】:
另一个用于 iPhone 的开源 HTTP 服务器是轻量级的 GCDWebServer,它构建在 Grand Central Dispatch 之上。它只有几个源代码文件,并提供了一个简单且可扩展的 API。
【讨论】:
如果您不熟悉网络编程,最好先阅读Beej's Guide to Network Programming,然后再阅读HTTP 1.1 spec,然后再查看源代码(因为在开始查看实现之前,您应该了解协议)。
一个简单的谷歌搜索出现了cocoahttpserver 和iSpit。否则,您可以下载Apache 并查看其源代码,但这并不是一个简单的实现。
【讨论】:
可以在 iPhone/iOS 上运行一个简单的文件服务器。 我能够成功地使用这种方法。以下是创建适用于 http 协议的简单文件服务器的步骤。 1. 安装适用于 iOS 的 TestFlight 应用 2. 从 Apple 商店安装 iSH 应用程序或从他们的网站侧加载它,因为根据您所在的国家/地区,该应用程序可能在商店中不可用。我于 2020 年 5 月在印度试用了它,但该应用程序在商店中不可用。所以我确实从他们的网站加载了它。 3. 通过iSH app,可以访问iPhone的linux内核。我确实使用了来自 python 的简单 http 服务器模块并在 linux shell 上执行它。 4. 在 iPhone 上运行基于 python 的服务器的命令: Python -m http.server 8080 5. 使用您所连接网络中分配给 iPhone 的本地 IP 访问文件服务器。这意味着,如果 iPhone 连接到 WiFi SSID,取决于路由器是配置为使用基于 MAC 地址的静态 IP 地址分配还是使用 DHCP 协议,您的 iPhone 将拥有由路由器分配的内部 IP。 6. 访问文件服务器的命令: http://192.168.1.3:8080 - 根据 iPhone 的 IP 地址和运行在 iPhone 上的服务器配置使用的端口修改地址。将其粘贴到浏览器中 - 应该能够看到服务器运行所在目录中列出的文件。
希望这已经足够清楚了,使用 python 中的 http.server 模块在 iPhone 上运行一个简单的基于 http 的文件服务器,通过底层内核的 linux shell,使用 iSH。
【讨论】: