【发布时间】:2016-08-10 22:18:29
【问题描述】:
我想通过 OpenWhisk 操作访问另一个 Bluemix 服务,并且不想从外部传递凭据。 JVM 环境中似乎不存在 VCAP_SERVICES。有办法找回吗?
【问题讨论】:
我想通过 OpenWhisk 操作访问另一个 Bluemix 服务,并且不想从外部传递凭据。 JVM 环境中似乎不存在 VCAP_SERVICES。有办法找回吗?
【问题讨论】:
OpenWhisk 中确实没有 VCAP_SERVICES 环境变量。
如果您在 Bluemix 中使用 Cloudant 服务,您会注意到 Bluemix 中的 OpenWhisk 会自动为您的 Cloudant 服务实例创建包绑定,如 OpenWhisk Catalog documentation 中所述。
在我的 OpenWhisk 开发中,我采用的策略是创建一个我定义参数的包。然后我在这个包中创建我的动作。所有操作都继承包中定义的参数,因此这为我提供了一种共享服务凭据的简单方法。如果我只有一个操作或没有包,我会在创建操作时将凭据作为参数传递给操作。
这里有一个例子https://github.com/IBM-Bluemix/openwhisk-visionapp 我初始化我的动作:
wsk action create -p cloudantUrl [URL] -p cloudantDbName openwhisk-vision -p watsonApiKey [123] vision-analysis analysis.js
【讨论】: