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

时间:2011-11-01 16:40:39

标签: http sockets tcp

我一直在寻找并尝试数周,以找到我能够理解并轻松实现的问题的解决方案,但我没有快乐。如果有人能让我摆脱痛苦,我将非常感激。

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

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

  

“CFStreamCreatePairWithSocketToHost”,“CFWriteStreamOpen”和   “CFReadStreamOpen”

连接,写入和读取数据。

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

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

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

1 个答案:

答案 0 :(得分:0)

将系统命令编码为特殊的HTTP请求。根据HTTP请求确定要执行的操作(执行命令或提供内容),而不是传入端口。如果您需要使用单独的http服务器(就像您所说的那样),请考虑使用一个层来接收设备中的所有内容,并根据请求将调度发送到其他服务器(或端口)。