如何获取跨域 javascript 响应文本

how to get cross-domain javascript response text

我在域 a.exmaple.com 中有一个很大的 js,在页面 b.example.com 中需要这个 js。

由于js大小多了300kb,想用localStorage来存储

现在是问题,我无法获取js文本,在页面b.exmaple.com,我使用 脚本标记 link js,所以 script.innerHTML 是 ''。

如果我用xhr得到response.text,会跨域。

并且可能很难让 js 设置响应头 Access-Control-Allow-Origin:'b.example.com'.

与其避免下载 js 文件,不如尝试在您的网络服务器中启用 deflate options

如果这不是一个选项,您可以将 js 文件结构化为 JSON,类似

function classname(){}
classname.method = function(){}..

下载完成后,只需执行 JSON.stringify(className) 并将其存储在本地存储中