gpt4 book ai didi

paw-app - 在 Paw 中使用环境变量创建请求

转载 作者:行者123 更新时间:2023-12-02 14:09:13 25 4
gpt4 key购买 nike

在 Paw 应用程序中,如果我们手动创建请求,我们可以调用上下文菜单并选择一个环境变量。

在本例中,URL 如下所示:

如果我更改环境或变量本身,它就会更新。

我正在尝试改进现有插件(API Blueprint Importer),但我只知道如何从环境变量中读取。
我只能做这样的事情:
httplocalhost8000 是从环境变量中读取的。

尝试实现像第一张图片中那样的目标,但无济于事。
Paw 应用程序中是否有可用的 API,或者目前不可用?

最佳答案

动态创建对环境变量的引用在 Paw 中绝对是可行的。首先,您需要创建环境变量,然后创建引用它的动态值。

动态设置环境域

由于环境变量存储在域(在应用中也称为组)中,因此您应该首先使用 context.getEnvironmentDomainByNamecontext.createEnvironmentDomain 创建一个具有所需名称的环境域>。您可以在 the documentation page for the context object 上阅读有关这两种方法的更多信息。 .

getOrCreateEnvironmentDomain(name) {
let env = this.context.getEnvironmentDomainByName(name)
if (typeof env === 'undefined') {
env = context.createEnvironmentDomain(name)
}
return env
}

创建环境域后,您需要添加一个用于存储变量的环境。该过程与环境域的创建非常相似。您可以在此处找到有关所使用方法的更多信息 on the documentation page for the EnvironmentDomain .

getOrCreateEnvironment(domain, name) {
let env = domain.getEnvironmentByName(name)
if (typeof env === 'undefined') {
env = domain.createEnvironment(name)
}
return env
}

下一步是创建变量(如果不存在),或者返回它(如果存在)。

/* 
uses:
@getOrCreateEnvironmentDomain
@getOrCreateEnvironment
*/
updateOrCreateEnvironmentVariable(domainName, envName, name, value) {
let domain = this.getOrCreateEnvironmentDomain(domainName)
let env = this.getOrCreateEnvironment(domain, envName)
let varDict = {}

varDict[name] = typeof value !== 'undefined' ? value: ''
env.setVariablesValues(varDict)
return domain.getVariableByName(name)
}

设置引用

要创建对环境变量的引用,您需要创建环境变量动态值。它的标识符是com.luckymarmot.EnvironmentVariableDynamicValue,并且只接受一个参数environmentVariable,即它引用的变量的id。

...
let envVariable = this.updateOrCreateEnvironmentVariable('Server', 'api-blueprint', 'protocol', 'https')
let dv = new DynamicValue(
'com.luckymarmot.EnvironmentVariableDynamicValue',
{
environmentVariable: envVariable.id
}
)
/* use the Dynamic Value like any other */
...

关于paw-app - 在 Paw 中使用环境变量创建请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39555646/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com