繁体   English   中英

我可以使用AJAX'POST'将数据发布到我服务器上的JSON文件中吗?

[英]Can I use AJAX 'POST' to post data to a JSON file on my server?

我只想用最简单/最简单的方法从用户在我的服务器上输入的数据“POST”从AJAX表单中获取数据。

因此,如果用户在页面上的输入表单中留下他们的名字,那么AJAX POST将数据发送到我服务器上的JSON文件。

这可能吗? 这是获取输入数据的最快方法吗?

提前致谢!

*有人可以告诉我为什么这会被贬低? 我违反了任何条款吗? 我想在将来知道。 谢谢。 :/

Ajax文件直接无法写入服务器中的文件。 但是你可以通过在你的服务器上创建简单的php脚本说savejson.php来实现这一点。
你的表格:

<form>
    <input type="text" id="name" name="name">
    <button type="submit" id="submit-btn">
</form>

<script>
$('#submit-btn').on('click', function(e) {
    e.preventDefault();
    if( $('#name').val() ){
        $.ajax({
            url     : 'savejson.php',
            method  : 'post',
            data    : { 'name': $('#name').val() },
            success : function( response ) {
                alert( response );
            }
        });
    }
});
</script>

你的savejson.php:

<?php
    $fp = fopen('names.json', 'w');
    fwrite($fp, json_encode($_POST['name']));
    fclose($fp);
?>

Ajax是一个或多或少只是意味着“从JavaScript发出HTTP请求”的术语。

您可以使用它来发出POST请求。 您可以使用它来使该请求主体成为JSON文本

您不能POST到文件 ,只能到URL。 您需要服务器端代码来负责获取请求中的数据并将其写入文件。

是。 这是一个相当常见的问题,您也可以查看以下问题:

如何使用JQuery发布JSON数据?

Jquery Ajax将json发布到webservice

实质上,您使用客户端语言(Javascript)向后端发送POST请求。 当然,您将需要后端语言(例如PHP或node.js)。

我举一个例子:

JS(jQuery):

$.post("http://yourURL.com/backend.php",{
    data: {
        "name"   :"John Smith",
        "vehicle":"TARDIS"
    }
}).success(function(response){
        console.log(response)
        //do something with the response
    });

PHP

<?php
    $data = json_decode($_POST['data'], true);
    $name = $data['name'];
    $vehicle = $data['vehicle'];
    echo "Welcome {$vehicle}-driving $name!";
?>

你的PHP尤其应该包括错误检查等等,但这对于一个简单的例子就足够了。

在您的控制台中,执行AJAX请求后,您将看到以下内容:

Welcome TARDIS-driving Doctor!

哪个是PHP文件的输出

很抱歉在这里跳得很晚。

var name = $('#name').val();
   $.ajax({
        url     : 'somefile.php',
        method  : 'post',
        data    : { 'name': name },
        success : function( response ) {
            console.log( response );
        }
    });

这样就可以了。

您无法单独使用JavaScript写入任何文件。 只是cookie或本地(或会话)存储。

AJAX POST将数据发送到服务器。 数据采用JSON格式。 你已经理解了这一部分。

在服务器上,需要有一个API来使用此JSON并将其写入文件,或者更好地将其存储在数据库中。

更多问题:
可以直接写入文件吗? 没有
API可以写入文件吗? 是的,技术上可行,但不可取
其他人如何做到这一点? 他们接受JSON响应并将其写入服务器端代码中的数据库。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM