java - Vaadin 7 中的外部脚本 (CORS) 问题
问题描述
我正在尝试使用脚本标记将外部 JS 脚本包含到我的页面中。为了包含脚本,我使用 VaadinServlet Bean 注册了一个 BootstrapListenery,它能够将脚本附加到带有response.getDocument().body().append()
.
但是当我加载页面时,我收到错误“跨源请求被阻止”。由于脚本位于不同的域中,因此由于 CORS 策略,它不能包含在页面中。
我已经尝试了很多东西,以允许加载外部脚本。我尝试在setAccessControlHeaders
VaadinServlet 的方法中设置所需的标头,就像在此处完成的那样。我尝试将 Bean 添加到此处WebSecurityConfigurerAdapter
所述。我尝试添加到我的控制器。而且我已经尝试添加到我的 WebSecurityConfigurerAdapter 的配置方法,如此处所述。@CrossOrigin(origins = "*", allowedHeaders = "*")
http.cors().and().csrf().disable();
但我就是不能让它发生。对于我可以尝试的其他方法或我在这里做错的任何建议,我将不胜感激。我也找不到调试这个的方法。
解决方案
CORS 标头需要在为外部脚本提供服务的服务器上设置,而不是在您的 Vaadin 应用程序上。
推荐阅读
- excel - Qlikview 从 excel 特定行加载
- sql-server - MSSQL - Extract value from XML attribute regardless of postion
- android - 如何立即运行workmanager
- android - Android循环问题,如何正确循环?
- html - HTML different button styles - like a gear
- azure - How do I find the automation parameters for Azure alerts?
- c# - 就 GC .NET 而言,结构优于类的真实示例
- python - How do I split the values and convert to float in a list if they are all in a single quotation?
- c# - 如何在 xamarin 跨平台中创建水平图像滚动?
- c# - 使用串口显示体重秤的数据