我在Config.groovy
文件中添加了外部化属性文件。如:
grails.config.locations << "file:app-test-config.properties"
这就是我的外化属性file app-test-config.properties
的样子:
SERVER_IP_ADDRESS = 123.456.789.0 SERVER_PORT= 1234
我正在使用AngularJs框架,我在assets
目录中有一个javascript文件。现在,我想访问该javascript文件中的服务器IP和端口。
这怎么可能?有没有办法在javascript文件中使用Holder
或grailsApplication
来读取外部化属性文件中的属性?
答案 0 :(得分:0)
您可以按如下方式创建控制器操作:
class JavaScriptController {
def grailsApplication
def config() {
String config = "${grailsApplication.config.flatten() as JSON}"
String content = "config= ${config}"
render contentType: 'text/javascript', text: content
}
}
没有测试过上面的代码,但想法是推送一个javascript文件,其中包含所有配置为javascript对象。您可以将缓存/ cloudfront应用于此响应,以便您的服务器不会收到很多请求。