如何从 java 访问 CUPS 变量?

How to access CUPS variables from java?

我正在尝试访问 Cloud Foundry 中 CUPS 中的变量。目前我将我的值设置为环境变量。

在java中我使用下面的代码来获取环境变量。

String variableName = System.getenv("variableName");

我正在关注这个 link,它讨论了创建用户提供的服务并从那里检索数据。

例子

cfenv = require("cfenv")

var localVCAP = require("./local-vcap.json")

var appEnv = cfenv.getAppEnv({vcap: localVCAP})
var creds  = appEnv.getServiceCreds(/session-secret/) || {}

console.log("session secret is:", creds.secret)

除了在 java 中,我怎样才能做类似的事情? "How to retrieve cloud foundry CUPS varibles into java?"

一旦创建,用户提供的服务实例的行为就像仅通过市场创建的服务实例。默认情况下,绑定到应用程序的所有服务都在环境变量 VAP_SERVICES 中可用。

将 CUPS 服务绑定到您的应用程序,然后在您的 java 代码中阅读 VCAP_SERVICES 系统 属性。

String vcapServices = System.getenv("VCAP_SERVICES");

这个值是一个JSON,里面有所有绑定服务的相关信息。您可以解析此 JSON 以读取您的 CUPS 服务属性。 样本变量看起来像

{
    "VCAP_SERVICES": {
        "user-provided": [
            {
                "sec": {
                    "key": "1234567890"
                },
                "label": "user-provided",
                "name": "sample-cups-secret",
                "syslog_drain_url": "",
                "tags": []
            }
        ]
    }