可以定制java';s HttpURLConnection接受非HTTP响应头

可以定制java';s HttpURLConnection接受非HTTP响应头,java,shoutcast,Java,Shoutcast,我尝试使用HttpURLConnection来读取shoutcast元数据。某些shoutcast服务器重试非HTTP标头: qty:~ qrtt1$ curl 'http://72.13.86.203:8000/' ICY 200 OK icy-notice1:<BR>This stream requires <a href="http://www.winamp.com/">Winamp</a><BR> icy-notice2:SHOUTcast

我尝试使用HttpURLConnection来读取shoutcast元数据。某些shoutcast服务器重试非HTTP标头:

qty:~ qrtt1$ curl 'http://72.13.86.203:8000/'
ICY 200 OK
icy-notice1:<BR>This stream requires <a href="http://www.winamp.com/">Winamp</a><BR>
icy-notice2:SHOUTcast Distributed Network Audio Server/win32 v1.9.8<BR>
icy-name:VCY America - Teaching, Talk, and Sacred Music
icy-genre:Christian Sacred Talk
icy-url:http://www.vcyamerica.org
content-type:audio/mpeg
icy-pub:1
icy-br:64
qty:~qrtt1$curl'http://72.13.86.203:8000/'
冰200行吗
ICE-notice1:
此流需要
icy-notice2:SHOUTcast分布式网络音频服务器/win32 v1.9.8
冰冷的名字:VCY美国-教学、谈话和神圣音乐 冰冷的体裁:基督教的神圣谈话 冰冷的url:http://www.vcyamerica.org 内容类型:音频/mpeg 冰酒吧:1 冰比尔:64
第一行是ICIY 200 OK,因此HttpURLConnection不解析它,并且没有HTTP 200 OK将成为解析错误。有没有定制HttpURLConnection的方法


如果不可能,我将从套接字编写代码。

查看类层次结构。HttpURLConnection继承自抽象URLConnection。您可以扩展URLConnection来做您需要的事情。我一直在使用HttpURLConnection来连接SHOUTcast流。然而,在安卓4.4之后,这似乎不起作用。我在这里发布了一个关于这个问题的问题: