尝试在iframe中加载BIRT报告时,出现以下错误消息。我在开发人员控制台中收到以下错误。
错误消息:
“混合内容:位于'https://someserver.com/payrollRecon/StatisticsReport_> efreshReport.action'的页面是通过HTTPS加载的,但是请求了不安全的插件资源'http://someserver.com/birt/preview?__sessionId=20190410_063733_547&__imageid=custom272bcb9e16a06cfee3f1.svg'。此请求已被阻止;该内容必须通过HTTPS服务。”
我为content-security-policy标头设置了以下内容:
upgrade-insecure-requests; default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://someserver.com/birt/ https://someserver.com/birtuat/; object-src *; style-src 'self' 'unsafe-inline' https://someserver.com/birt/ https://someserver.com/birtuat/; img-src *; frame-src 'self' https://someserver.com/birt/ https://someserver.com/birtuat/ https:; font-src 'self' data:; connect-src 'self'
upgrade-insecure-request CSP指令应该将URL升级为https,但是由于某种原因,它没有升级。
upgrade-insecure-request已添加到csp指令中,以将请求升级到https。但不起作用。
答案 0 :(得分:0)
我设法通过修改BIRT报告jsp文件中的代码将URL升级到https。我修改了RequesterFragment.jsp,RunFragment.jsp和FramesetFragment.jsp文件,以将请求升级到https。
在上述文件的baseHref中添加了https模式。