Java RESTful API身份验证和进一步请求
我用java编写了一个RESTful API,客户机必须在其中创建一个帐户(POST to/user),然后登录(POST to/login) 现在,我正在使用AngularJS为web浏览器创建一个前端。问题是,当我创建一个用户,尝试登录并输入一些登录安全url时,我得到 401未经授权 似乎每个请求都应该分别进行身份验证,对吗 我做的步骤:Java RESTful API身份验证和进一步请求,java,angularjs,rest,authentication,Java,Angularjs,Rest,Authentication,我用java编写了一个RESTful API,客户机必须在其中创建一个帐户(POST to/user),然后登录(POST to/login) 现在,我正在使用AngularJS为web浏览器创建一个前端。问题是,当我创建一个用户,尝试登录并输入一些登录安全url时,我得到 401未经授权 似乎每个请求都应该分别进行身份验证,对吗 我做的步骤: 发布到/创建用户的用户 POST to/login哪个用户登录 进入/account/1/something,这是我的REST服务中的登录安全路径,它返
@Component("successHandler")
public class RestAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuccessHandler {
private RequestCache requestCache = new HttpSessionRequestCache();
@Override
public void onAuthenticationSuccess(final HttpServletRequest request, final HttpServletResponse response, final Authentication authentication)
throws ServletException, IOException {
final SavedRequest savedRequest = requestCache.getRequest(request, response);
if (savedRequest == null) {
clearAuthenticationAttributes(request);
return;
}
final String targetUrlParameter = getTargetUrlParameter();
if (isAlwaysUseDefaultTargetUrl() || (targetUrlParameter != null && StringUtils.hasText(request.getParameter(targetUrlParameter)))) {
requestCache.removeRequest(request, response);
clearAuthenticationAttributes(request);
return;
}
clearAuthenticationAttributes(request);
}
public void setRequestCache(final RequestCache requestCache) {
this.requestCache = requestCache;
}
}
我还有另外一个类,但是如果我全部添加,帖子会变得太冗长,所以如果你(建议一个类名)需要下面任何一个类的代码,请告诉我:
您必须添加一些代码,以便我查看问题。。。您还需要解释您的身份验证是如何工作的?!?你送饼干吗?还是代币?如果不知道如何在身份验证后对客户端请求进行身份验证和重新标识,就没有机会帮助您:-)@Neo我意识到我不知道使用哪种方法:)我假设身份验证是缓存的,这就是为什么客户机应该能够在/login之后只进行一次多次请求的原因。如果您需要任何其他代码,请尽快通知我