org.springframework.web.client.HttpClientErrorException: 401 未经授权

新手上路,请多包涵

我有网络服务网址:

 http://myservice.local/aprovalanduser/?format=json&Name=India

当我使用

resttemplate httpsrestTemplate.getForObject(uri, userdetails[].class)

我收到错误:

org.springframework.web.client.HttpClientErrorException: 401 未经授权

在网络服务方法中:

 method: "GET",
data: xmlData,
contentType: "application/xml",
dataType: "xml",
async: true,
crossDomain: false,

我只为 XML 设置标题,如下所示:

 headers.setContentType(MediaType.APPLICATION_XML);

原文由 Sharma 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 712
1 个回答

这是@ekem chitsiga 建议的基本身份验证代码

String plainCreds = "username:password";
byte[] plainCredsBytes = plainCreds.getBytes();
byte[] base64CredsBytes = Base64.encodeBase64(plainCredsBytes);
String base64Creds = new String(base64CredsBytes);

HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "Basic " + base64Creds);
HttpEntity<String> request = new HttpEntity<String>(headers);

RestTemplate restTemplate = new RestTemplate();
String url = "http://myservice.local/aprovalanduser/?format=json&Name=India";
ResponseEntity<Object> response = restTemplate.exchange(url, HttpMethod.GET, request, Object.class);
response.getBody();

原文由 Venom 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题