【发布时间】:2020-11-04 17:45:21
【问题描述】:
我使用 netlify 从 git repos 部署 gatsby 应用程序,并使用 contentful 作为我的 CMS。为了使用内容交付 api,我在客户端定义了 accessToken 和空间 id,现在可以正常工作了。但是 accessToken 是纯文本,所以暴露 accessToken 是一个安全问题。我知道 netlify 可以创建环境变量,但似乎这些变量只适用于服务器端。我创建了一个名为 CONENTFUL_ACCESS_TOKEN 的变量,我可以在 gatsby-config.js、gatesby-node.js 等处使用 process.env.CONENTFUL_ACCESS_TOKEN 访问它,但我无法在客户端访问它,那怎么办? 这是我的 client.js,它在客户端运行。
const client=contentful.createClient({
space:'your spaceid',
accessToken:'your access token',
})
如何更改为: 常量客户端=内容。创建客户端({ 空间:'你的空间ID', accessToken:NETLIFY_ENVIROMENT_VARIABLE_NAME, })
【问题讨论】:
标签: gatsby netlify contentful