0

我有一个其他人在他们的网站上使用的 javascript 文件。它创建一个按钮并加载一个托管在我们服务器上的 css 文件:

style.setAttribute('href', 'http://mysite.com/assets/some.css');

用户可以像这样在他们的站点中调用它:

<script type="text/javascript" src="http://mysite.com/global.js"></script>

我想让用户能够在我的网络应用程序上上传他们自己的 CSS 文件,该文件将替换我在global.js.

目前,我custom_css:binary在表格中添加了一个Users包含 CSS 文件的列,但这需要用户在网站上保持登录状态。我不确定这是否是解决此问题的正确方法,或者是否有更好的方法。此外,这种方法有哪些安全风险?

我正在使用 RoR 作为后端。

任何帮助都会很棒!

更新 1

我能够存储上传的 JS 文件并加载自定义 CSS,但它目前正在检查current_user- 这意味着不会为用户呈现样式表。我该如何解决这个问题?

4

1 回答 1

0

我能够自己找到解决方案。

有几种方法可以解决这个问题:

  1. 向 JS src 添加查询字符串
  2. 为您的脚本生成的某个元素抓取页面

我选择了选项 1。当我检测到动态生成的查询字符串时,我将其发送到params散列中的控制器并相应地加载 css 文件。

于 2013-04-30T15:58:45.653 回答