为什么我无法通过Ajax将数据发送到.json格式文件

时间:2019-06-06 11:46:20

标签: javascript json ajax web

我正在制作一个简单的服务器,以将数据发送到.json文件并从另一个页面接收该数据,但是在将数据存储在.json文件中时遇到问题

我使用了以下代码,但没有用

<script src="jquery/jquery-3.4.1.min.js"></script>

<script>

     var _lname = "x";
    var _fname = "y";
    var _mname = "x";
      $.ajax({
                type: "POST",
                url: "data.json",
                data: "{'lastName':'" + _lname + "','firstName':'" + _fname + "','middleName':'" + _mname + "'}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function () {
                    }
                });

</script>

2 个答案:

答案 0 :(得分:1)

仅将数据发布到JSON文件是行不通的,因为发送POST请求需要服务器侦听请求并使用您发送的有效负载执行某些操作。您可以制作一个简单的NodeJS或PHP script(或其他任何服务器端语言)来处理将有效负载保存到JSON文件中。

答案 1 :(得分:0)

发出POST请求时,会将数据发送到Web服务器。

Web服务器可以对POST请求中的数据执行某事

通过默认,它不执行任何操作。想象一下,如果有人可以向其他任何人的Web服务器发出POST请求并向其中写入新文件,将会引起的问题。 Google的主页每隔一秒钟就会被污损。

如果要存储POST请求的结果,则需要编写服务器端代码来执行此操作(这样做时几乎可以肯定要执行身份验证和授权)。


请注意,示例代码中的data:从不是有效的JSON。不要尝试通过将字符串混在一起来编写JSON。使用类似JSON.stringify的库函数。