在iOS上与Icecast服务器打开套接字连接
我正在尝试为iOS上的Icecast服务器创build源客户端。
我相信我理解这里的协议Icecast 2:协议描述,使用C#
但是,我无法创build到服务器的套接字连接。 假设服务器在http://myicecastserver.com上的8000端口上运行。 我设置了一个名为stream的安装点,它在ezstream用作input时起作用。 我应该如何从iOS打开连接?
我已经使用这样的AsyncSocket库:
[socket connectToHost:@"http://myicecastserver.com" onPort:8000 error:&err];
喜欢这个:
[socket connectToHost:@"http://myicecastserver.com/stream" onPort:8000 error:&err];
无济于事。
我也尝试使用与SocketRocket的websocket连接也无济于事:
SRWebSocket *socket = [[SRWebSocket alloc] initWithURL:[NSURL URLWithString:@"http://myicecastserver.com:8000/stream"]]; [socket setDelegate:self]; [socket open];
这给了我一个404错误
我已经尝试了一些这方面的变化,但只是无法打开这个连接来挽救我的生命! 谢谢!
UPDATE
我使用SocketTest作为testing源客户端,并且能够在端口8000上连接到http://myicecastserver.com
我的解决scheme如下:
我正在使用这样的AsyncSocket库:
[socket connectToHost:@"myicecastserver.com" onPort:8000 error:&err];
诀窍是删除'http://'(是的,我是那么傻)然后连接上我可以发送正确的标题。