Reactjs 在尝试访问react中的本地json文件时,需要启用javascript以运行此应用程序响应
错误消息我试图使用fetch()访问本地.json文件,如 但是当我在网络上看到它的时候 您需要启用javascript才能运行此应用程序 我签入了一些其他页面,但我无法解决此问题。Reactjs 在尝试访问react中的本地json文件时,需要启用javascript以运行此应用程序响应,reactjs,api,ecmascript-6,Reactjs,Api,Ecmascript 6,错误消息我试图使用fetch()访问本地.json文件,如 但是当我在网络上看到它的时候 您需要启用javascript才能运行此应用程序 我签入了一些其他页面,但我无法解决此问题。 如何解决此问题在client package.json文件中未指定服务器代理时,我收到了此消息 "proxy": "http://localhost:5000" (假设服务器设置为在端口5000上侦听。在我的情况下,添加后还需要重新启动服务器)从第二个图像中的错误消息可以明显看出,该文件包含无效的JSON数据。确
如何解决此问题在client package.json文件中未指定服务器代理时,我收到了此消息
"proxy": "http://localhost:5000"
(假设服务器设置为在端口5000上侦听。在我的情况下,添加后还需要重新启动服务器)从第二个图像中的错误消息可以明显看出,该文件包含无效的JSON数据。确切地说,该文件中的第一个字符是
,我不知道您试图访问本地json文件是什么意思。如果本地文件是指运行网页的设备上的文件,则无法访问该设备上的文件。您只能访问为应用程序提供服务的Web服务器上的文件,这些文件位于应用程序的目录中。我假设是第二种情况,并假设在应用程序的顶部目录中有一个名为fakedata.json的文件。为了访问该文件,您可以按如下方式使用导入:
import myJsonFile from "./fakedata.json"
如果您想使用fetch动态加载,那么应该将./
fetch('./fakedata.json')
因此,它获取一个名为fakedata.json的文件,该文件位于根目录。我也面临类似的问题
我把下面的代码放在应用程序之后。请使用
app.get('/*', (req, res) => {
res.sendFile(path.join(__dirname, '/../', 'build', 'index.html'));
});
它直接服务于所有API请求
也许这可以帮助其他人解决这个问题。这意味着,您的请求没有得到任何信息,可能是您的json文件不存在于目录中,或者需要一些身份验证。
.
尝试转到DevTools,选择网络选项卡,
然后再次发送您的请求。如果您看到您在那里,请将鼠标悬停在它上,查看它是否指向正确的目录
“/fakedata.json”-指向”http://localhost/fakedata.json"
“fakedata.json”-指向下的目录http://localhost“不一定是直接子目录。。。请注意开头的“/”
可能是文件,fakedata.json
位于错误的目录中。
只需将fakedata.json
文件从src
目录移动到public
目录。那么它应该可以工作。也许您已经在开发人员工具中禁用了JavaScript?开发者工具->按⋮代码>->“禁用JavaScript”不。我没有禁用JavaScript“本地json文件”是什么意思?你到底在哪里看到那个错误消息?这里我也附上了错误消息。请检查@Bergi可能的副本
app.get('/*', (req, res) => {
res.sendFile(path.join(__dirname, '/../', 'build', 'index.html'));
});