当前位置: 首页 > 知识库问答 >
问题:

Spring Security无法访问外部JavaScript

薛弘阔
2023-03-14
<script src="https://cdnjs.cloudflare.com/ajax/libs/sockjs-client/1.4.0/sockjs.min.js"></script>
<script src="/webjars/stomp-websocket/stomp.min.js"></script>
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class AppConfig extends WebSecurityConfigurerAdapter {

@Bean
public LogoutSuccessHandler logoutSuccessHandler() {
    return new LogoutController();
}

@Bean
public AuthenticationController authenticationController() throws UnsupportedEncodingException {
    JwkProvider jwkProvider = new JwkProviderBuilder(domain).build();
    return AuthenticationController.newBuilder(domain, clientId, clientSecret)
            .withJwkProvider(jwkProvider)
            .build();
}

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.csrf().disable();
    http
        .authorizeRequests()
        .antMatchers("/callback", "/login", "/", "/*.png", "/css/**", "/js/**", "/bibliographies", "/bibliographies/*", "/api/**", "/webjars/**", "/*.js", "/**.js").permitAll()
        .anyRequest().authenticated()
        .and()
        .logout().logoutSuccessHandler(logoutSuccessHandler()).permitAll();
}

如何解决此问题?

共有1个答案

夔修伟
2023-03-14

添加:

<security:intercept-url pattern="/resources/**" access="permitAll" />

在你的上下文文件中。这里,resources是所有JS文件所在的目录。

您可以参考这个链接:Spring security不允许加载CSS或JS资源

 类似资料:
  • 我一直在尝试使用githubrowsersample对sunflower应用程序示例进行Restfulise,所以我一直在尝试进行一些复制和粘贴。然而,我完全搞不懂为什么会出现这个错误。此特定代码是完整的复制和粘贴。 我收到的错误是: 错误:DataBoundViewHolder(T)在DataBoundViewHolder中不是公共的;无法从T为类型变量的包外部访问:T扩展了DataBoundV

  • 我无法从外部访问我的服务。首先,这里是我的conf yaml文件: nginx-pod.yaml nginx-service.yaml metallb-config.yaml 然后我创建了集群。命令 打印: 一切正常,而且< code > ku bectl describe service/nginx-service 打印: curl命令在主服务器打印。接下来我试图从另一个网络打开,它不起作用,但

  • https://github.com/confluentinc/cp-docker-images/blob/5.0.0-post/examples/kafka-cluster/docker-compose.yml 我已经编辑了该文件,并将选项添加到docker组合文件中,以便可以在主机之外访问它们。 我已经运行了以下命令: kafka-1、kafka-2、kafka-3的docker日志(均相同)

  • tl;如果在Docker容器中运行,一个RestController正确回答,另一个则不正确。 该服务有两个API 和。 它们都是通过docker compose运行的。 返回。 返回一个空的200响应。正如预期的那样。 应该返回一个200响应和一个每次调用API时都会增加的数字。可悲的是,事实并非如此。 在本地运行该服务可以提供预期的结果。 maven spotify插件用于从以下创建图像。 我

  • 这是一个一般的错误,但我无法找到问题和解决方案。我的本地主机()上的Minecraft服务器位于端口上。可以通过主机的内部IP(localhost和)访问它,但无法通过外部IP()访问它。 是的。我重新启动了主机。服务器上还说 上启动Minecraft服务器 所以这一定是真的。 我可以通过驻留在设备上的一个简单的node.js服务器来验证端口是否对HTTP开放。这可以通过在同一网络上的移动设备上访

  • 外部访问容器 容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P 或 -p 参数来指定端口映射。 当使用 -P 标记时,Docker 会随机映射一个 49000~49900 的端口到内部容器开放的网络端口。 使用 docker container ls 可以看到,本地主机的 49155 被映射到了容器的 5000 端口。此时访问本机的 49155 端口即可访问容器内 web 应