获取应用程序参数不起作用

时间:2017-03-30 15:06:32

标签: node.js rest ibm-cloud cloudfoundry pivotal-cloud-foundry

我使用以下lib通过代码访问CF, https://github.com/prosociallearnEU/cf-nodejs-client

我需要做的是获取特定空间的应用并获取应用环境

目前我能够获取所有应用,但不是特定应用的环境,任何想法我想念的地方?我没有得到任何信息错误,以便能够理解可以错过的内容......

const CloudController = new (require("cf-nodejs-client")).CloudController(endpoint, proxy);
    const UsersUAA = new (require("cf-nodejs-client")).UsersUAA;
    const Apps = new (require("cf-nodejs-client")).Apps(endpoint, proxy);
    const Orgs = new (require("cf-nodejs-client")).Organizations(endpoint, proxy);

    CloudController.getInfo()
        .then((result) => {
            console.log(result);
            UsersUAA.setEndPoint(result.authorization_endpoint, proxy);
            return UsersUAA.login(username, password);
        }).then((result) => {
        Apps.setToken(result);
         return Apps.getApps();
    }).then((result) => {
        Apps.setToken(result);
        console.log("app guid is: " + result.resources[0].metadata.guid);
        return result.resources[0].metadata.guid;
    }).then((guid) => {
       return Apps.getEnvironmentVariables(guid);
    }).then((result) => {
        console.log(result);
    }).catch((reason) => {
        console.error("Error: " + reason);
    });

更新

我需要的是获取appEnv用于指定的应用程序(以及我的org& space& App名称),我需要代码效率高(性能......),是我的代码流程好吗?

1 个答案:

答案 0 :(得分:1)

根据您的请求(获取应用程序环境)和文档:cf-nodejs-client v0.13 documentation,getEnvirnmentVariables函数似乎可以满足您的需求。

作为替代方案,您可以执行以下操作:

var cfenv = require('cfenv');
var appEnv = cfenv.getAppEnv();