HttpURLConnectionを使用して承認ヘッダーでGET要求を正常に送信するのには苦労しています。エラーコード400が返されます。HttpURLConnectionヘッダーの承認を送信します。
私はOKHttpClientで成功しましたが、依存関係を使用しないように要求しました。ここで
は私のコードです:
public static String GETReqUserProfiles() throws IOException {
URL url = new URL(UrlString);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setDoOutput(true);
urlConnection.setRequestMethod("GET");
urlConnection.setRequestProperty("Content-Type", "application/" + "json");
urlConnection.setRequestProperty("authorization", "Bearer " + MANAGEMENT_TOKEN);
urlConnection.connect();
if (urlConnection.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
+ urlConnection.getResponseCode());
}
String assembledOutput = "";
BufferedReader responseBuffer = new BufferedReader(new InputStreamReader(
(urlConnection.getInputStream())));
String output;
System.out.println("Output from Server:\n");
while ((output = responseBuffer.readLine()) != null) {
System.out.println(output);
assembledOutput = assembledOutput + output;
}
urlConnection.disconnect();
return assembledOutput;
}
EDIT:作業
すべて -
問題がでました:
urlConnection.setDoOutput(true);
setDoOutput(真):宣言しますが、送信側要求のあるボディ。 GETリクエストは本文を必要としないので、falseに設定するかコメントアウトすることができます。代わりに、POST、PATCH、PUTなどのために使用されます(ボディを必要とするリクエスト)。
も注意してください。
urlConnection.setRequestMethod("GET");
は、GETリクエストを送信した場合、具体的に宣言する必要はありません(私は読みやすくするためのコードに残っている)
私は(あなたが含まれている場合setDoOutputと思われますtrue)、要求メソッドが指定されていない場合、メソッドはデフォルトでPOST要求になります。
プットurlConnection.connect(依存関係を使用したくない場合は)ここにコードを表示することができます。後でsetRequestProperty – AbhayBohra
こんにちはAbhay、ありがとう、私は接続を含めるとまだ400を返します:( – ccdle12