http - 处理系统命令和 http 请求的套接字服务器

标签 http sockets tcp

我已经搜索并尝试了数周,以找到我可以理解并轻松实现的解决我的问题的方法,但我并不高兴。所以,如果有人能让我摆脱痛苦,我将不胜感激。

我正在构建一个功能类似于“Air Video”和“Air Playit”等应用程序的 iphone 应用程序。该应用程序应与远程主机上运行的服务器通信。该服务器应该能够执行由 iphone 发送的命令来编码视频并通过 http 流式传输。

在我的例子中,我的 iPhone 应用程序发送要在远程主机上执行的命令。远程主机正在运行一个 python 套接字服务器,例如监听端口 3333。 在 iphone 上,我只是在使用

"CFStreamCreatePairWithSocketToHost", "CFWriteStreamOpen" and "CFReadStreamOpen"

连接、写入和读取数据。

我的远程主机,成功拦截命令并开始编码。 为了提供内容,我必须运行一个单独的 http 服务器(我使用的是 Python simpleHTTPServer),它正在监听另一个端口。

我想做的是对系统命令和 http 请求使用相同的端口。 我上面提到的应用程序似乎就是这样做的,我注意到它们有自己的内置网络服务器。

我确定我遗漏了一些东西,但请耐心等待,这是我第一次尝试构建应用。

最佳答案

将您的系统命令编码为特殊的 HTTP 请求。根据 HTTP 请求而不是传入端口来决定要做什么(执行命令或提供内容)。如果您需要使用单独的 http 服务器(如您所说),请考虑使用一个层来接收来自设备的所有内容并根据请求分派(dispatch)到其他服务器(或端口)。

关于http - 处理系统命令和 http 请求的套接字服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7969735/

相关文章:

javascript - Python 套接字问题 : How To Get Reliably POSTed data whatever the browser?

ruby - 我可以使用 Ruby 通过 TCP 发送对象吗?

java - 将图像从java服务器发送到android

c++ - 简单的客户端/服务器 TCP c++

http - CORS过时了,什么意思?

http - 哪个 URL 应该用于子资源的 GET、PUT 和 DELETE?

Python BaseHTTP服务器 : How to get it to stop?

ruby-on-rails - 连接管理器安装在 Rails 中的什么位置?

带有自签名无效证书的 http2

http - 如何将 Handle 转换为 HandleFunc?