我尝试使用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
第一行是 ICY 200 OK ,因此HttpURLConnection不会解析它,并且 HTTP 200 OK 将不会成为解析错误。有没有办法自定义HttpURLConnection?
如果不可能,我将从Socket编写代码。