我正在尝试向验证服务器发送帖子消息,我正在使用postforobject。当我运行该程序时,我得到"线程中的异常" main" org.springframework.web.client.HttpClientErrorException:401 null"错误
responseEntity = rest.postForObject(uri, "", String.class);
我也试过
strpbrk
同样的结果,它没有用。
当我使用Simple Rest Client时,它可以工作 Go Playground
有什么想法吗?
答案 0 :(得分:5)
401 null
可能意味着服务器需要某种形式的身份验证,但没有提供(即请求中没有授权标头)
最可能的解释是:简单REST客户端(重新)使用Chrome的cookie。如果您之前使用表单登录对您的服务进行了身份验证,则Simple Rest Client将重用JSESSIONID cookie。要检测到这一点,只需按F12并打开调试器的网络选项卡。仅供参考,还有其他浏览器插件,例如"Advanced REST Client",可让您更清楚地了解发送到服务器的内容。
使用restTemplate发送请求时,它无法访问会话cookie(这是预期的)。您应该发布到允许匿名访问的URI,或者在请求中提供某种形式的身份验证。如果您需要其他帮助,请发布您的安全配置。