[英]curl command in java
首先,我已經看過幾個文件,有關相同的stackoverflow問題..我的項目特定問題在嘗試運行命令時:
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();
}
我收到了未經授權的401錯誤和一堆html標簽。 這似乎是一個重復的問題,但我已經嘗試了所有的方法。 我知道替代方法是使用http響應方法,但特別是我想使用curl命令。 提前致謝。
嘗試更改此行
String[] command = {"curl", "-u" ,"Accept:application/json", username, ":" , password , url};
成
String[] command = {"curl", "-H", "Accept:application/json", "-u", username+":"+password , url};
嘿試試這個我有同樣的問題。 它在我的終端工作有與你的相同的錯誤。
String[] command = {"curl", "-u" , username+ ":" + password , url};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.