Przede wszystkim, ja już widziałem kilka dokumentów, StackOverflow pytania dotyczące samo ..I've moje pytanie konkretnego projektu Kiedy próbuje uruchomić polecenie:curl polecenie java
curl -u username:password https://example.com/xyz/abc
od mac terminal, dostaję moje pożądane dane formatu json. Ale uruchamiając to samo polecenie z kodu java, pojawia się w konsoli nieautoryzowany błąd 401. Mój kod to:
String username="myusername";
String password="mypassword";
String url="https://www.example.com/xyz/abc";
String[] command = {"curl", "-u" ,"Accept:application/json", username, ":" , password , url};
ProcessBuilder process = new ProcessBuilder(command);
Process p;
try
{
p = process.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
StringBuilder builder = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
builder.append(line);
builder.append(System.getProperty("line.separator"));
}
String result = builder.toString();
System.out.print(result);
}
catch (IOException e)
{ System.out.print("error");
e.printStackTrace();
}
uzyskać Nieautoryzowany 401 błąd i kilka tagów HTML. Wydaje się, że to powtarzające się pytanie, ale próbowałem wszystkich podejść. Wiem, że alternatywa używa metody odpowiedzi http, ale szczególnie chcę używać poleceń curl. Z góry dzięki.
Przepraszam. Nie pomogło! –
nie ma problemu, w mojej pierwszej wersji brakowało flagi -H, co powodowało, że składnia zapytania była nieważna –