【发布时间】:2020-07-08 14:26:32
【问题描述】:
gatsby: 2.20.8
gatsbh-source-contentful: 2.2.5
我已经验证了我的 spaceId 和 accessToken 是正确的,并且我已经验证了这些密钥可以访问我的 Contentful development 环境。我试过了:
- 启用
GATSBY_CONTENTFUL_OFFLINE - 删除
.cache目录 - 删除节点模块
- 将
environment设置为“master”并将其完全删除 - 将 env vars 包装在模板文字中(建议在一个旧的 github 问题上)
我不断收到此错误。有什么想法吗?
ERROR
Accessing your Contentful space failed.
Try setting GATSBY_CONTENTFUL_OFFLINE=true to see if we can serve from cache.
Used options:
spaceId: "*********z1u"
accessToken: "*****************************************vMI'"
environment: "development"
host (default value): "cdn.contentful.com"
downloadLocal (default value): false
localeFilter (default value): [Function]
forceFullSync (default value): false
pageLimit (default value): 100
useNameForId (default value): true
这是我来自gatsby-config.js的代码
{
resolve: `gatsby-source-contentful`,
options: {
spaceId: process.env.CONTENTFUL_SPACE_ID,
accessToken: process.env.CONTENTFUL_ACCESS_TOKEN,
environment: process.env.CONTENTFUL_ENVIRONMENT,
},
},
【问题讨论】:
-
只是想知道为什么配置文件中有环境?另外你目前有什么内容吗?我知道在 UI 中有任何内容模型之前尝试设置时遇到了一些错误。你还能看到 graphiQL 输出吗?
-
我确实发布了内容。我在 Contentful 中创建了开发环境,只是为了看看这是否是问题所在(我只是没有费心创建一个 env var),但是如果我从
gatsby-source-contentful选项中完全删除了environment属性,它仍然会失败。我无法访问 graphiQL,因为此错误正在终止构建 -
我更改了
gatsby-config.js代码并为环境添加了一个 env var 的引用,以帮助避免混淆 -
我也有同样的问题。我安装了名为rg-portfolio 的启动器并运行脚本以使用模型和内容初始化我的内容空间。所以我的 spaceID 和 app 令牌是正确的。当我启动
gatsby develop时,它给了我你的错误。我posted an issue in the rg-portfolio repo。在这一点上,我怀疑这个问题是由于 graphQL 查询所期望的模型与内容空间中实际存在的模型之间的任何类型的不匹配造成的。 -
使用 rg-portfolio,我犯了使用 Contentful 教程中提供的访问令牌的错误。相反,我需要在我的 Contentful 空间上使用访问令牌...
Setting > API Keys > Example Key 1。
标签: gatsby contentful