在 Netlify 上部署会引发我的 GraphQL/Gatsby/Contentful 查询错误,需要不必要的查询参数

Posted

技术标签:

【中文标题】在 Netlify 上部署会引发我的 GraphQL/Gatsby/Contentful 查询错误,需要不必要的查询参数【英文标题】:Deploying on Netlify throws an error with my GraphQL/Gatsby/Contentful query, demands needless query parameter 【发布时间】:2020-06-04 16:52:59 【问题描述】:

起初我在本地构建服务器上遇到了这个错误,但我设法在那里修复它......查询仍然是一样的,但 gatsby 并没有在查询中抛出任何错误。但是每次我尝试在 Netlify 上进行部署时,它都会失败并显示以下消息:

toFormat seems to be empty, we need a fileExtension to set it.
    1 | fragment GatsbyContentfulFluid_tracedSVG on ContentfulFluid 
 >  2 |   tracedSVG
      |   ^
    3 |   aspectRatio
    4 |   src
    5 |   srcSet
    6 |   sizes
    7 | 
 failed during stage 'building site': Build script returned non-zero exit code: 1
    8 |
    9 | query optbuildreposrccomponentsshopProductsJs2136335468 
   10 |   products: allContentfulProduct 
   11 |     edges 
   12 |       node 
 Shutting down logging, 22 messages pending
 File path: /opt/build/repo/src/components/shop/Products.js
 Plugin: none

这是我在本地遇到的相同错误,我不知道为什么会发生。没有理由认为 toFormat 是必需的参数。这是使用标准的 gatsby-source-contentful 插件 API 请求,该请求在过去一直提供图像而没有问题。如果我将请求更改为“固定”而不是“流动”,问题就会消失,但我需要网站这部分的流动图像。

我几天前给 Netlify 员工发了电子邮件,但还没有收到回复。任何帮助将不胜感激。

【问题讨论】:

我也面临同样的问题....你得到修复或更新了吗? 嗨,嗯,问题已经解决了。我想我最终将查询更改为静态图像。很抱歉我没有更好地记录这个过程。您可以查看github.com/erasebegin/otherworld-ink的存储库 【参考方案1】:

对于那些面临同样问题的人,我想出了一个简单的解决方案。

    从您使用此扩展名_tracedSVG 的所有文件位置中删除。

例如。

GatsbyContentfulFixed_tracedSVG 

GatsbyContentfulFixed

    停止你的 gatsby 服务器并使用以下命令:

    gatsby clean && gatsby develop

    提交并推送您的更改(如果您使用的是 Github)

    在 Netlify 上找到选项:清除缓存并部署站点

它应该可以修复您在 Netlify 上的部署以及控制台上的错误 :)

【讨论】:

【参考方案2】:

两个建议:

    本地:仔细检查您的内容中是否有任何不附加 .png 或 .jpg 后缀的图片引用 Netlify:清除缓存并部署站点

【讨论】:

以上是关于在 Netlify 上部署会引发我的 GraphQL/Gatsby/Contentful 查询错误,需要不必要的查询参数的主要内容,如果未能解决你的问题,请参考以下文章

尝试访问部署在 Netlify 上的站点时出现“找不到页面”

在 Netlify 上部署 gatsby 站点时响应错误的大小图像

Netlify 上的 Ruby 版本

使用 gatsby 解决 netlify 上的 firebase 身份验证(谷歌登录)部署错误

将 Gatsby 博客部署到 Netlify 时出错

Gridsome 项目托管在 netlify 上。点击时,即使 URL 更新,页面也不会加载