【发布时间】:2021-10-08 04:44:32
【问题描述】:
我有一个 api 需要 api_access_token 的用例...我正在考虑缓存令牌并跟踪过期时间或每个请求的锁以处理并发请求,关于如何实施或任何理想方式的任何建议?
apiAccessToken = createAPIAccessToken(ctx, userId)
url := "https://<hostname>/<api>"
c := http.Client{Timeout: time.Duration(5) * time.Second}
myJson := bytes.NewBuffer([]byte(`{"key":"set.table.attr","Custom_Field":"yes"}`))
req, err := http.NewRequest("POST", url, myJson)
if err != nil {
return
}
req.Header.Add("token", apiAccessToken)
res, err := c.Do(req)
defer res.Body.Close()
【问题讨论】:
-
如果你有少量的值要本地存储在内存中,你可以检查github.com/patrickmn/go-cache,否则需要寻找像redis这样的外部缓存
标签: go caching locking access-token