如何在黑莓上获取重定向网址

时间:2012-02-29 13:26:53

标签: java blackberry

我在黑莓上使用流媒体播放器播放视频网址。如果网址返回“200”状态代码则会成功播放。

当我通过以下网址时,它返回“302”http状态代码。它不会在流媒体播放器上播放。

http://belointr.rd.llnwd.net/KGW/ea398ac7b03a91c2ddf451f1fd7e3ef87f19da59_fl9.mp4?x-belo-vsect=kgw-basketball

当我检查302的状态代码时,它表示重定向网址。

当我在浏览器上传递网址时,它会自动调用重定向网址。

http://belointr.vo.llnwd.net/kip0/_pxn=2+_pxI0=Ripod-h264+_pxL0=undefined+_pxM0=+_pxI1=A21907+_pxL1=begin+_pxM1=+_pxR1=13737+_pxK=20558/KGW/ea398ac7b03a91c2ddf451f1fd7e3ef87f19da59_fl9.mp4?x-belo-vsect=kgw-basketball

如何在黑莓上以编程方式获取重定向网址。?

请帮帮我。

1 个答案:

答案 0 :(得分:1)

在响应的标头中,检索标题“位置”的值,它包含重定向网址。这是HTTP协议的标准

编辑:如何获取位置标题的真实快速示例(可以写得更好更安全)

    URL url = new URL("http://some.url");
    int responseCode = -1;
    while (responseCode != 200) {
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        responseCode = conn.getResponseCode();
        if (responseCode > 299 && responseCode < 400) {
            url = new URL(conn.getHeaderField("Location"));
        }
    }