私は必要なさまざまなヘッダーを返すPostmanでこのGETコマンドを正常に実行できます。私はJavaでこれを実装しようとしているが、何も戻って来ていないhttp://SERVER/qcbin/api/authentication/sign-inJava http GETはnullを取得し続ける
GET:私はこの最初のGETのための基本認証を使用しています。私はnullを得続けます。
私が間違っていることを誰かに教えてもらえますか?私は間違いを理解できません。
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Base64;
public class test2 {
public static void main(String[] args) {
try {
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("myproxy", 8080));
URL url = new URL ("http://SERVER/qcbin/api/authentication/sign-in");
byte[] credBytes = ("jsmith" + ":" + "abc123").getBytes();
Base64.Encoder base64Encoder = Base64.getEncoder().withoutPadding();
String encoding = base64Encoder.encodeToString(credBytes);
HttpURLConnection connection = (HttpURLConnection) url.openConnection(proxy);
connection.setRequestMethod("GET");
connection.setDoOutput(true);
connection.setRequestProperty ("Authorization", "Basic " + encoding);
コンテンツは、次の行の後にヌルに設定されます。あなたは、ストリームから行を読んでいる次のコードで
InputStream content = (InputStream)connection.getInputStream();
BufferedReader in =
new BufferedReader (new InputStreamReader (content));
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
} catch(Exception e) {
e.printStackTrace();
}
}
に達した場合は、マシン上で郵便配達のテストを行いましたJavaコードが実行されていますか?リクエストの 'curl -vvv'を投稿できますか? –
なぜ 'setDoOutput(true)'を呼びますか?この場合、接続に最初に何らかの出力が期待されていませんか? –
@RC - はい、同じマシンです。私は非常にJavaの新しいです。私はカールに慣れていません。 –