我在 url 上与邮递员进行 api 调用:
https://cex.io/api/order_book/BTC/USD
Run Code Online (Sandbox Code Playgroud)
简单的 GET 没有标题没有参数没有什么。但与 java 相同:
RestTemplate rt = new RestTemplate();
rt.getForObject("https://cex.io/api/order_book/BTC/USD", String.class);
Run Code Online (Sandbox Code Playgroud)
让我 403. 问题出在哪里?
RestTemplate 设置了“User-Agent: Java_version”标头,您尝试查询的站点似乎拒绝使用该用户代理进行访问。
您可以显式设置用户代理而不是默认的,例如:
HttpHeaders headers = new HttpHeaders();
headers.set("User-agent", "SomeUserAgent");
HttpEntity<String> entity = new HttpEntity<String>(headers);
RestTemplate rt = new RestTemplate();
String result = rt.exchange("https://cex.io/api/order_book/BTC/USD", HttpMethod.GET, entity, String.class).getBody();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1933 次 |
| 最近记录: |