2017-08-08 13 views
1

私は接続し、ページタイトルをhereから取得しようとしています。リンクから ".com"の後にすべてを削除すると、コードは正常に動作します。次のコードは機能しません。Java - Jsoup HTTPエラーがURLをフェッチしています。ステータス= 405

try { 
    Document doc = Jsoup.connect("https://news.google.com/news/local/section/geo/Sammamish,%20WA%2098075,%20United%20States/Sammamish,%20Washington?ned=us&hl=en") 
     .data("query", "Java") 
     .userAgent("Chrome") 
     .cookie("auth", "token") 
     .timeout(3000) 
     .post(); 
    String title = doc.title(); 
    Log.d("hellomate", title); 
} 
catch (IOException e) { 
    Log.d("hellomatee", e.toString()); 
} 

コードが機能する場合、返されるタイトルは「Sammamish Washington - Google News」です。 コードから返されるエラーは次のとおりです。「org.jsoup.HttpStatusException:HTTPエラー取得URL:ステータス= 405、URL = https://news.google.com/news/local/section/geo/Sammamish,%20WA%2098075,%20United%20States/Sammamish,%20Washington?ned=us&hl=en

ステータス405は何を意味していますか? Jsoupは私が使ったURLの種類を許可していませんか?

ありがとうございました。

+0

チェックこのQ:

あなたは例の下the jsoup docsを見れば、それはあなたがおそらくあなたの要求を構築したいと思う方法を示しますhttps://www.google.de/url?sa=t&source =ウェブ&RCT = J&URL = httpsを://stackoverflow.com/questions/41487157/jsoup-http-error-fetching-url-status-405&ved=0ahUKEwiT6sf2s8jVAhWMOxQKHWaSDmMQFggfMAE&usg=AFQjCNHU8QpL9rsnlQ2naxyoJPH-FQcuiA – Thomas

+0

405は、それがあなたのPOSTがないことを意味し、 "メソッドが許可されていません" ですこのリソース(URL)に許可されています。あなたが何かを受信したい場合は.get()を試してください – Andreas

答えて

0

ステータス405は、「メソッドが許可されていません」を意味するhttpエラーコードです。マイクロソフトからのドキュメントはhereです。 @ Andreasが言ったように、を.get();に変更することでこれを修正できます。

Jsoup.connect("http://en.wikipedia.org/").get(); 
+0

ありがとう。 .get()に変更するとジョブが終了しました –

関連する問題