我使用spring ide在本地机器嵌入式apache服务器上部署了spring boot web应用程序,并访问了一个带有错误令牌的url,在这种情况下,它会返回未经授权的访问错误401和托管异常处理抛出的特定错误消息,而如果我在独立但相同的apache服务器上部署相同的应用程序,它会给我500个内部服务器错误而不是401或任何其他服务器端错误。
我捕获的日志只有以下一行不同:
local
------------------
2021-10-13 16:59:51 - Authentication Failed. Invalid signature in token.
2021-10-13 16:59:51 - Servlet.service() for servlet [dispatcherServlet] in context with path [/myapplication] threw exception
java.lang.RuntimeException: Authentication Failed. Invalid signature in token.
server
------------------
2021-10-13 16:59:35 - Authentication Failed. Invalid signature in token.
2021-10-13 16:59:35 - Forwarding to error page from request [/user/get_user_profile] due to exception [Authentication Failed. Invalid signature in token.]
java.lang.RuntimeException: Authentication Failed. Invalid signature in token.
下面是我用来处理异常的配置:
@Autowired
private JwtAuthenticationEntryPoint unauthorizedHandler;
http.cors().and().csrf().disable()
.authorizeRequests()
.antMatchers("admin/**").permitAll()
.anyRequest().authenticated()
.and()
.exceptionHandling().authenticationEntryPoint(unauthorizedHandler)
.and()
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
http.addFilterBefore(authenticationFilter(), UsernamePasswordAuthenticationFilter.class);
这是处理异常的类:
public class JwtAuthenticationEntryPoint implements AuthenticationEntryPoint, Serializable {
private static final long serialVersionUID = -90731367144543199L;
@Override
public void commence(HttpServletRequest request,
HttpServletResponse response,
AuthenticationException authException) throws IOException {
response.getOutputStream().println(authException);
}
}
与其在筛选器中引发异常,不如如下设置其状态:
response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
response.getWriter().write("Here will be your message string"); //show error message
return;
问题内容: 我正在使用GCM服务从服务器推送信息。如果我使用浏览器密钥,它将成功消息显示为: {“ multicast_id”:4849013215736515938,“ success”:1,“ failure”:0,“ canonical_ids”:0,“ results”:[{“ message_id”:“ 0: 1348742583011905%2adac3a0f9fd7ecd“}]},
我试图从当前上下文中的所有项目中找到一个项目,但我似乎总是收到以下错误消息: 请求失败。远程服务器返回错误:(401)未授权。 首先,我设置了访问交换服务的所有内容: 然后我定义要接收的项目(按ID): 最后但同样重要的是,我尝试在我的物品中搜索这个物品: 这就是我的错误发生的地方。我尝试过各种其他的方法,但无论我做什么,我都会被授权。 有人可以以正确的方式指导我,以解决这个问题吗? 编辑 我收到
我的代码:GoogleCredential凭据 credential.refreshToken() 错误日志: 创建服务号的步骤: 我在凭据中的oauth 2.0中创建了一个Web应用程序 然后我用客户端ID创建了一个服务号 现在我正在使用这个服务号和从它生成的p12证书来验证和创建Google凭据的对象 一旦刷新令牌,我就给了我401例外。 在这种情况下,任何帮助都会受到感激
重新异常文件 登录处理程序 用户控制器 有人能帮我从API中得到正确的错误吗?我一直在尝试签出以了解这个系统的情况。邮递员显示对方的错误,就好像任何归档为空一样。我重新启动dotnet,每次都得到相同的结果。有人帮我吗,真的很感激。虽然,我是这里的初学者,谢谢
Microsoft.Graph REST.API 我试图通过https://graph.microsoft.com/v1.0/me从graph.api获得有关我的信息 我也在这里检查这个其他主题,但我找不到像我一样的错误
这快把我逼疯了...一切都应该是正确的,我总是得到未经授权的错误在我的API路由! Api.php路由: }); 注册控制器: 数据库: 请求: 接受应用/json设置为: 我也尝试使用jQuery来请求一个查询参数api_key但它也不起作用!! 我搜索了很多,但无法解决这个问题。我有另一个新的应用程序与Laravel和auth,它的作品完美,但这个项目是旧的,我最近更新到Laravel 7,我