答案 0 :(得分:1)
根据我发现的内容,VCAP_SERVICES
和VCAP_APPLICATION
中可能无法使用特殊字符,可能是出于安全考虑。
解决方法是创建user-provided service
,在那里定义变量,将服务绑定到应用程序并通过服务检索信息。
答案 1 :(得分:1)
对于普通的用户添加的环境变量(即不是VCAP_ *),只要您以通常的方式将它们从shell中转义,命令行就可以让您执行此操作。例如。在这里我使用单引号:
$ cf set-env mjfmsb DUDE '!@#$%^&*()'
Setting env variable 'DUDE' to '!@#$%^&*()' for app mjfmsb in org mfraioli / space dev as mfraioli...
OK
TIP: Use 'cf restage mjfmsb' to ensure your env variable changes take effect
$ cf env mjfmsb | grep DUDE
DUDE: !@#$%^&*()
不确定仪表板为何不允许这样做。