Php 在reactjs项目中找不到本地ajax文件

Php 在reactjs项目中找不到本地ajax文件,php,ajax,reactjs,Php,Ajax,Reactjs,我在尝试用Reactjs编写一个实践项目时遇到了问题。这只是一个基本的react项目,我没有使用通量或任何东西。该项目已使用create react应用程序设置 我只是尝试一个简单的过程,从本地json文件(使用axios库)获取一些模拟数据。最终的想法是构建一个可以返回数据或更新mysql数据库的php文件。问题是,react在本地文件上一直说“404notfound” 例如: axios.get('./ajax.json') .then(function (r

我在尝试用Reactjs编写一个实践项目时遇到了问题。这只是一个基本的react项目,我没有使用通量或任何东西。该项目已使用create react应用程序设置

我只是尝试一个简单的过程,从本地json文件(使用axios库)获取一些模拟数据。最终的想法是构建一个可以返回数据或更新mysql数据库的php文件。问题是,react在本地文件上一直说“404notfound”

例如:

    axios.get('./ajax.json')
            .then(function (result) {
                console.log(result);
            });
我得到的只是ajax.json文件中的“404notfound”。我试过用不同的方式来指代它,但我得到的只是“找不到”

最后,我希望React应用程序与通过ajax编写的php类通信,以便将信息保存到本地数据库。我使用的“ajax.json”文件只是一个用于测试目的的快速文件。我也尝试过使用一个php文件,但得到了相同的结果

我用“npm开始”运行应用程序-我想知道这是否与此有关。我在任何地方都找不到关于如何使用内置react服务器(与npm start一起使用)与本地php文件通信的说明

我已经成功地从fakejsonplaceholder网站进行了一次ajax调用,但这是使用http://调用,而不是本地调用

有没有什么特别的方法可以用React来做?我错过了什么


谢谢。

您的React应用程序正在您的浏览器中运行,而您的浏览器无权访问您的文件系统。如果您可以直接从浏览器获取文件,那么您将面临一个重大的安全问题。您可能需要从服务器上提供json数据,或者我建议您复制json数据,并将其复制到其中,以获得一个url,供测试使用。

我不确定这是否是一个明确的答案,但我最后才开始胡闹,并在我将json文件放入项目的“公共”文件夹时获得了成功。
非常感谢azium,我真的很感谢你的评论。

啊,好的,我理解。我怀疑这可能是类似的事情,然而,我还没有完全理解,但我想我理解你的意思。所以-如果我把我的数据库和php文件放在我的远程服务器上,然后这样做,这会起作用,是吗?所以我将在我的react应用程序中使用“”或类似的名称?我不太精通PHP,但你的说法听起来是正确的。只要文件是通过某个url公开的,那么您就应该能够使用
fetch
axios
etcI获取它。实际上,我已经将测试json文件和测试php文件移动到了我的服务器上。我仍然在ajax调用中遇到错误。检查浏览器开发者工具上的“网络”,文件正在被访问,url是正确的。当我控制台记录返回的数据时,axios会给我一个错误,该错误读取“网络错误”-没有其他信息。我现在正在使用jquery和getJSON进行尝试-如果我使用这个文件-“”来自假api站点,我会成功。如果我使用远程服务器上的json文件,就会出现故障。我似乎找不到任何关于错误代码是什么的线索。你能直接通过浏览器中的url访问JSON文件吗?这就是upvote按钮的作用!很高兴你弄明白了:)那里的圣诞投票推迟了!对不起,我是新来的:D