2 回答
TA贡献1784条经验 获得超7个赞
某些服务器期望User-Agent
请求中存在标头,以将其视为有效请求。因此,您需要将其添加到您的请求中,如下所示。
con.setRequestProperty("User-Agent", "My-User-Agent"); int responseCode = con.getResponseCode();
该标头的值(My-User-Agent
在上面的示例中)可以设置为此端点所需的任何字符串。例如,PostmanPostmanRuntime/7.16.3
为此设置了类似的内容。
C# 可能会在内部执行此操作,因此您不必显式设置它。
TA贡献1775条经验 获得超8个赞
public String getOrders(SatangCurrencyPairs currencyPair) throws IOException, BadResponseException {
String operation="orders/?pair="+currencyPair.toString();
StringBuilder result = new StringBuilder();
URL url = new URL(baseUrl+operation);
//URL url_ = new URL("https://api.tdax.com/api/orders/?pair=btc_thb");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestProperty("User-Agent", "java client");
con.setRequestMethod("GET");
//https://api.tdax.com/api/orders/?pair=btc_thb
int responseCode=con.getResponseCode();
if(responseCode!=HttpURLConnection.HTTP_OK){
throw new BadResponseException(responseCode);
}
BufferedReader rd = new BufferedReader(new InputStreamReader(con.getInputStream()));
String line;
while ((line = rd.readLine()) != null) {
result.append(line);
}
rd.close();
return result.toString();
}
添加回答
举报