URIError: 无法解码参数 '/<myusername>/<projectname>/%PUBLIC_URL%/manifest.json' [英] URIError: Failed to decode param &#39;/&lt;myusername&gt;/&lt;projectname&gt;/%PUBLIC_URL%/manifest.json&#39;

查看:51
本文介绍了URIError: 无法解码参数 '/<myusername>/<projectname>/%PUBLIC_URL%/manifest.json'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试恢复我一年半前编写的旧 React 应用程序.

I am trying to revive an old React app that I coded a year and a half ago.

我克隆了它并安装了所有依赖项,但是当我执行npm start"时,它只会加载一个空白页面并抛出错误:

I cloned it and installed all of the dependencies, but when I do 'npm start', it just loads a blank page and throws the error:

URIError: 无法解码参数'///%PUBLIC_URL%/manifest.json'"

"URIError: Failed to decode param '///%PUBLIC_URL%/manifest.json'"

老实说,我不知道该往哪里去.

I am honestly not sure where to go from here.

这是我的 package.json 的样子:

Here is what my package.json looks like:

{
  "name": "nosmallstreamer",
  "version": "1.0.0",
  "description": "This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).",
  "main": "index.js",
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/chaselancaster/nosmallstreamer-frontend.git"
  },
  "author": "",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/chaselancaster/nosmallstreamer-frontend/issues"
  },
  "homepage": "https://github.com/chaselancaster/nosmallstreamer-frontend#readme",
  "dependencies": {
    "react": "^17.0.1",
    "react-dom": "^17.0.1",
    "react-router-dom": "^5.2.0",
    "react-scripts": "^4.0.0"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

这是我的 index.html 在 public 文件夹中的样子:

Here is what my index.html looks like in the public folder:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <!-- <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico" /> -->
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="theme-color" content="#000000" />
    <!--
      manifest.json provides metadata used when your web app is installed on a
      user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
    -->
    <link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
    <!--
      Notice the use of %PUBLIC_URL% in the tags above.
      It will be replaced with the URL of the `public` folder during the build.
      Only files inside the `public` folder can be referenced from the HTML.

      Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
      work correctly both with client-side routing and a non-root public URL.
      Learn how to configure a non-root public URL by running `npm run build`.
    -->
    <title>React App</title>
  </head>
  <body>
    <noscript>You need to enable JavaScript to run this app.</noscript>
    <div id="root"></div>
    <!--
      This HTML file is a template.
      If you open it directly in the browser, you will see an empty page.

      You can add webfonts, meta tags, or analytics to this file.
      The build step will place the bundled scripts into the <body> tag.

      To begin the development, run `npm start` or `yarn start`.
      To create a production bundle, use `npm run build` or `yarn build`.
    -->
  </body>
</html>

这是我的 manifest.json 在公共文件夹中的样子:

And here is what my manifest.json looks like in the public folder:

{
  "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"
}

感谢任何帮助!

推荐答案

尝试将 package.json 文件中的 homepage 更改为:"/" 而不是使用您的 GitHub 存储库的 URL.react-scripts run(这是 npm start 运行的内容)似乎使用 homepage 中的域作为提供应用程序的根.

Try changing your homepage in your package.json file to: "/" instead of using your GitHub repo's URL. react-scripts run (which is what npm start runs) seems to use the domain from the homepage as the root from which to serve the app.

这篇关于URIError: 无法解码参数 '/<myusername>/<projectname>/%PUBLIC_URL%/manifest.json'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆