Прежде всего, я уже видел пару документов, вопросы о стековом потоке относительно того же самого... Я задал свой конкретный вопрос При попытке выполнить команду:
curl -u username:password https://example.com/xyz/abc
с терминала mac, я получаю мои данные json-формата. Но запустив ту же команду из java-кода, я получаю ошибку Unauthorized 401 в консоли. Мой код:
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();
}
Я получаю ошибку Unauthorized 401 и кучу html-тегов. Это похоже на повторяющийся вопрос, но я пробовал все подходы. Я знаю, что альтернатива использует метод ответа HTTP, но особенно я хочу использовать команды curl. Заранее спасибо.