Java 403使用spring boot时,但与postman配合良好
我在url上与邮递员进行api调用:Java 403使用spring boot时,但与postman配合良好,java,spring,Java,Spring,我在url上与邮递员进行api调用: https://cex.io/api/order_book/BTC/USD 无标题无参数无任何内容。但java也是如此: RestTemplate rt = new RestTemplate(); rt.getForObject("https://cex.io/api/order_book/BTC/USD", String.class); 给我403。问题出在哪里?RestTemplate设置了“用户代理:Java\u版本”标题,并且您试图查询的站点似乎
https://cex.io/api/order_book/BTC/USD
无标题无参数无任何内容。但java也是如此:
RestTemplate rt = new RestTemplate();
rt.getForObject("https://cex.io/api/order_book/BTC/USD", String.class);
给我403。问题出在哪里?RestTemplate设置了“用户代理:Java\u版本”标题,并且您试图查询的站点似乎拒绝了该用户代理的访问
您可以显式设置用户代理,而不是默认的用户代理,如:
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();
HttpHeaders=newhttpheaders();
headers.set(“用户代理”、“SomeUserAgent”);
HttpEntity=新的HttpEntity(标题);
RestTemplate rt=新的RestTemplate();
字符串结果=rt.exchange(“https://cex.io/api/order_book/BTC/USD,HttpMethod.GET,entity,String.class).getBody();
邮递员返回的HTTP代码是什么?应该是一样的。从他们的角度来看,他们确实有速率限制,将您的请求限制为每10分钟600次。可能是你在测试中超过了。im远没有接近600,postman的http代码是200OK。这应该被接受为答案是的,这就是问题所在!