在没有JQuery的情况下将JSON发送到服务器并获取JSON作为回报

JérômeVerstrynge:

我需要将JSON(我可以对其进行字符串化)发送到服务器,并在用户端检索结果JSON,而无需使用JQuery。

如果我应该使用GET,如何将JSON作为参数传递?是否有太长的风险?

如果我应该使用POST,如何onload在GET中设置功能的等效项

还是应该使用其他方法?

备注

这个问题不是关于发送简单的AJAX。不应将其作为重复项关闭。

hex494D49:

使用POST方法以JSON格式发送和接收数据

// Sending and receiving data in JSON format using POST method
//
var xhr = new XMLHttpRequest();
var url = "url";
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/json");
xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhr.status === 200) {
        var json = JSON.parse(xhr.responseText);
        console.log(json.email + ", " + json.password);
    }
};
var data = JSON.stringify({"email": "[email protected]", "password": "101010"});
xhr.send(data);

使用GET方法以JSON格式发送和接收数据

// Sending a receiving data in JSON format using GET method
//      
var xhr = new XMLHttpRequest();
var url = "url?data=" + encodeURIComponent(JSON.stringify({"email": "[email protected]", "password": "101010"}));
xhr.open("GET", url, true);
xhr.setRequestHeader("Content-Type", "application/json");
xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhr.status === 200) {
        var json = JSON.parse(xhr.responseText);
        console.log(json.email + ", " + json.password);
    }
};
xhr.send();

使用PHP在服务器端处理JSON格式的数据

<?php
// Handling data in JSON format on the server-side using PHP
//
header("Content-Type: application/json");
// build a PHP variable from JSON sent using POST method
$v = json_decode(stripslashes(file_get_contents("php://input")));
// build a PHP variable from JSON sent using GET method
$v = json_decode(stripslashes($_GET["data"]));
// encode the PHP variable to JSON and send it back on client-side
echo json_encode($v);
?>

HTTP Get请求的长度限制取决于所使用的服务器和客户端(浏览器),范围从2kB-8kB。如果URI的长度超过服务器的处理能力,则服务器应返回414(请求URI太长)状态。

注意有人说我可以使用状态名称代替状态值。换句话说,我可以使用xhr.readyState === xhr.DONE而不是使用xhr.readyState === 4问题是Internet Explorer使用不同的状态名称,因此最好使用状态值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在没有ajax的情况下获取Json文件(拖放)并将其发送到服务器

如何在没有jquery的情况下使用ajax将数据发送到节点服务器?

在没有HTTP的情况下从同一服务器上的php将信息发送到ngnix

如何在没有“\”字符的情况下将 json 发送到 IoT 中心

如何在不配置邮件服务器的情况下将邮件发送到所有域

在不使用JSON的情况下将数组发送到Web服务

通过AsyncHttpClient将JSON作为POST请求发送到服务器

如何将组件数据作为json发送到服务器?

Flutter将json作为字节发送到websocket服务器?

Android将JSON发送到服务器

将JSON发送到服务器

将JSON数据发送到Laravel服务器

JSON格式(通过jQuery AJAX将JSON发送到Java / Wicket服务器)

如何获取Web客户端处理表单,以在不使用客户端脚本的情况下将页面ID信息发送到服务器

如何在Java中不使用XMLHttpRequest的情况下将数据发送到服务器?

如何在不阻止服务器的情况下通过tcp将数据发送到客户端?

在没有--bare的情况下将新的git repo推送到服务器

在没有Apache的情况下将php作为服务器运行

将工厂服务数据发送到控制器,以在有前景的情况下使用

如何在没有隔离作用域的情况下将变量从指令发送到父控制器

如何在没有 UI(即 HTML)的情况下将文件(docx、doc、pdf 或 json)发送到 fastapi 并对其进行预测?

Spring MVC在没有表单的情况下将模型数据从View发送到Controller

尝试在没有UI锁定的情况下将进程发送到后台

如何配置exim以在没有DNS的情况下将邮件发送到LAN

在没有网关的情况下将数据从UI5发送到ABAP?

我可以在没有 AppStore 验证的情况下将构建发送到 TestFlight 吗?

在没有表单提交的情况下将文件数据发送到ajax

将数据作为 json 从 ajax 发送到 express 服务器会导致预检 cors 错误

在没有服务器的情况下加载 JSON 文件