我正在爲在Brightcove視頻雲上託管視頻的網站創建視頻站點地圖。爲了得到從網站上所有的視頻信息,Brightcove公司提出來讀取他們的網址如下形式HttpURLConnection通過代理訪問時返回503錯誤
http://api.brightcove.com/services/library?token="+accountToken+"&page_size=1&command=find_all_videos&output=JSON&get_item_count=true
URL的輸出是JSON,其中accountToken
只是賬戶的標識符的響應。
當我在瀏覽器中用Token點擊上面的url時,它給了我正確的迴應。
我寫了下面的程序片段作爲我的瀏覽器使用代理來從URL
URL jsonURL = new URL("http://api.brightcove.com/services/library?token="+accountToken+"&page_size=1&command=find_all_videos&output=JSON&get_item_count=true");
HttpURLConnection connection = (HttpURLConnection) jsonURL.openConnection();
connection.setRequestMethod("GET");
connection.connect();
BufferedReader reader = new BufferedReader(
new InputStreamReader(connection.getInputStream()));
String lineRead = "";
while (reader.ready()) {
lineRead = lineRead + reader.readLine();
}
讀,我添加了下面的代碼,包括代理設置
System.setProperty("http.proxyHost", "my.proxyurl.com");
System.setProperty("http.proxyPort", "80");
不使用代理服務器設置,返回java.net.ConnectException: Connection refused: connect
並與代理它給了我java.io.IOException: Server returned HTTP response code: 503
所以我的問題是,爲什麼它給了我一個503(服務不可用)erro r?從瀏覽器工作正常。
更新1: 這似乎是一個網絡問題。我ping了域,它說「請求超時」。儘管通過HTTP工作。看起來像是防火牆的問題。
向下選民請評論。 –
它是什麼類型的代理? – jtahlborn
@jtahlborn:反向代理。你在問什麼背景? –