如何将Rails变量传递给AngularJS配置

时间:2014-11-05 21:31:26

标签: javascript ruby-on-rails ruby angularjs ruby-on-rails-4

在我的Angular app配置中,我有:

  

$ httpProvider.defaults.headers.common ['Custom-Auth-Token'] = ____;   $ httpProvider.defaults.headers.common ['Custom-Auth-Signature'] = ____;

为了向Rails后端服务器发出任何API请求,这些头是必需的。

在我的Rails后端,我正在使用Sorcery并且可以访问我的控制器/视图中的current_user.authentication_token。因此我需要将它传递给angular config.js.erb。这甚至可能吗?

我遇到的另一个问题是,auth-token将使用app secret进行哈希处理(这只能在Rails服务器上使用,而且不应该在JavaScript中看到),这将成为auth-signature。如何在rails侧执行此操作,然后将其传递给Angular的配置?

1 个答案:

答案 0 :(得分:1)

您可以将此信息放在HTML标记的数据属性中。从您前端的Angular应用程序中,您只需要使用其id获取此标记并从中获取数据。