Manifest.json意外令牌

时间:2019-03-15 07:23:33

标签: javascript node.js reactjs express manifest.json

您好,我将react / express项目推送到了heroku(https://polar-oasis-57801.herokuapp.com/),并在控制台中收到以下错误: Chrome console error messages

我尝试查找此错误,似乎我需要更改manifest.json文件中的某些内容,但不确定。任何建议都会有所帮助。这是我的清单文件:

{
  "short_name": "React App",
  "name": "Create React App Sample",
  "icons": [
    {
      "src": "favicon.ico",
      "sizes": "64x64 32x32 24x24 16x16",
      "type": "image/x-icon"
    }
  ],
  "start_url": ".",
  "display": "standalone",
  "theme_color": "#000000",
  "background_color": "#ffffff"
}

还有我在Github上的项目:https://github.com/bernar83/cat-cards

7 个答案:

答案 0 :(得分:1)

此错误意味着对manifest.json的请求未返回有效的JSON响应。鉴于它由于开始<而失败,因此它可能返回HTML。

确保正确链接manifest.json,并确保在部署过程中保持完整性。尝试导航到http://yoururl/manifest.json并检查结果。

EDIT1:看来您到清单的链接已损坏。在https://github.com/bernar83/cat-cards/blob/master/client/public/index.html中,尝试替换

<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />

使用

<link rel="manifest" href="manifest.json" />

EDIT2:只需检查您的Heroku链接即可确认错误。您的页面试图在路径manifest.json下找到/cat-cards/manifest.json,这是错误的。它只能是manifest.json

答案 1 :(得分:0)

我在server.js文件中添加了此更改"/cat-cards/",现在为app.use("/cat-cards/", express.static("client/build"));。添加该更改并推送到Heroku后,我的网站开始运作。这对我有帮助:https://github.com/facebook/create-react-app/issues/1812#issuecomment-286511320

答案 2 :(得分:0)

我有一个类似的问题。我将添加它,因为这是我在试图弄清楚时的最终结果。我在“不允许的JS”文件中包含了一些生成的图标图标标记。我的manifest.json位于我的src /目录中,因此粘贴在标记中的是引用不在我的公共根目录中的清单。然后,样板代码返回“此处不允许的JS” EJS HTML 作为manifest.json的实际返回值。,因此浏览器将其视为格式错误的JSON。...不理想。

因此,如果您的路由器将针对不良的HTTP请求返回此类信息(如Ant Design Pro一样),则可能是您的问题。

答案 3 :(得分:0)

是的,我遇到了这个问题,并为此付出了很多努力,然后我按照以下步骤进行了操作:https://github.com/facebook/create-react-app/issues/1812#issuecomment-286511320链接。它肯定有效。我感谢分享此链接的人。

答案 4 :(得分:0)

我遇到的问题也可以通过以下方式解决:

  1. 进入您的React应用中的package.json文件。

  2. 您将在顶部看到homepage属性,将其复制该URL即可将其删除。

  • 如果将其删除,请再次创建内部版本并在express.static('./build')中使用该内部版本。

  • 如果您将其复制,则在快速服务器文件中的app.use("that copied url" , express.static('./build'))中使用该URL。

答案 5 :(得分:0)

检查内部构建和公共文件夹中的 index.html。我遇到了同样的问题,只是发现问题与 Html 无关。

谢谢 比诺·辛格

答案 6 :(得分:0)

今天遇到了这个问题。我的团队的问题是在 server.js 文件中,void Start() { InvokeRepeating("spawnRandomAnimal",spawnDelay, spawninterval); } 线在静态资产上方 app.use(routes)

将其移到下方允许站点适当地部署到 heroku。