api - 内部带有变量的字符串,可以动态改变

标签 api go

我正在尝试在 golang 中设置一个 API,为了满足特定需求,我希望能够拥有一个环境变量,该变量将包含一个字符串形式的 URL(即:“https://subdomain.api.com/version/query") 并且我希望能够修改 API 调用中的粗体部分。

我不知道如何实现这一目标。

谢谢你的时间,

保罗

最佳答案

有很多方法,一种允许从环境配置 URL,然后在运行时动态配置 url 的方法是使用模板。

你可以期待一个 template来自环境:

apiUrlFromEnv := "https://{{.Subdomin}}.api.com/{{.Version}}/query" // get from env

修改自文档:

type API struct {
    Subdomain string
    Version   string
}
api := API{"testapi", "1.1"}
tmpl, err := template.New("api").Parse(apiUrlFromEnv)
if err != nil { panic(err) }
err = tmpl.Execute(os.Stdout, api) // write to buffer so you can get a string?
if err != nil { panic(err) }

关于api - 内部带有变量的字符串,可以动态改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40820004/

相关文章:

go - 为什么我不能使用 net.go 中的 conn.ok()?

api - 使用 Apigee 或类似代理服务时,我的后端 API 服务器需要(不需要)什么?

Python Telegram 机器人 - 发送图像

Docker,从 bitbucket 私有(private)仓库中获取

multithreading - 分发工作同步和fork-join并行编程方法之间有什么区别

testing - Golang 中的模拟函数来测试我的 http 路由

AngularJS - 在工厂中通过 Restangular 使用 REST API

c# - FreeAgent API (OAuth) 来自 c#

ios - 从 Swift Decodables 访问枚举的合适方法是什么?

go - 如何将日期字符串绑定(bind)到结构?