You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决托管在Cloudant上的Web应用“脚本执行被阻止”报错问题

问题产生原因
  • IBM Cloudant 安全策略更新后,对所有通过原生HTTP接口直接返回的HTML类静态资源,默认会注入带sandbox指令的Content-Security-Policy响应头,默认配置未包含allow-scripts权限,用于降低存储型XSS攻击风险,该策略为平台全局默认生效,无需用户主动配置。
  • 仅当你直接通过https://<你的Cloudant实例地址>/<数据库名>/<附件路径>的形式访问应用入口时会触发该限制,如果通过自定义服务转发请求则不会触发。
  • 少数场景下自定义域名绑定的平台路由会自动同步该安全规则,额外追加沙箱限制。
解决方法
  • 方法1:开启静态站点托管配置
    进入Cloudant控制台对应数据库的「静态站点托管」配置页,勾选「允许脚本执行」选项,保存后等待3~5分钟配置生效即可,平台会自动修改响应头的sandbox字段,补充allow-scripts权限。
  • 方法2:自定义设计文档响应头
    编辑存储静态资源的设计文档,在headers配置块添加以下内容,覆盖平台默认的安全头:
    "Content-Security-Policy": "sandbox allow-scripts allow-same-origin allow-forms; default-src 'self' 'unsafe-inline' 'unsafe-eval'"
  • 方法3:新增代理转发层
    不直接使用Cloudant原生接口对外提供Web服务,在前端新增轻量代理服务,转发请求时修改响应头的sandbox字段,补充allow-scripts权限即可解除限制。

内容的提问来源于stack exchange,提问作者jahoward11

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 10:54:03