JAVAEE知识整理之AJAX、JSON

目录

AJAX

AJAX是一种用于创建快速动态网页 的技术。

通过在后台与服务器进行少量数据交换 ,AJAX 可以使网页实现异步更新 。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
主要特征 :异步通信、局部更新、只传输必要数据、响应更快
工作原理:

  • 创建XMLHttpRequest对象:variable = new XMLHttpRequest();
  • 配置请求参数:open(method, url, async)
    • method:请求get或post
    • url:文件位置
    • async:同步false或异步true
  • 发送请求:send(string)
    注意:string:仅用于 POST 请求
  • 处理响应:
    • responseText:获得字符串形式的响应数据
    • responseXML:获得 XML 形式的响应数据

AJAX参数说明:

  • open():携带参数

  • setRequestHeader():携带头部信息

  • send():发送get/post请求
    创建AJAX请求 :

    java 复制代码
    // 1. 创建 XMLHttpRequest 对象
    var xhr = new XMLHttpRequest();
    
    // 2. 配置请求
    xhr.open('GET', 'https://api.example.com/data', true);
    
    // 3. 设置回调函数
    xhr.onreadystatechange = function() {
        if (xhr.readyState === 4) { // 请求完成
            if (xhr.status === 200) { // 成功响应
                // 处理响应数据
                console.log(xhr.responseText);
            } else {
                // 处理错误
                console.error('请求失败: ' + xhr.status);
            }
        }
    };
    
    // 4. 发送请求
    xhr.send();

jQuery中的AJAX

java 复制代码
$.ajax({
    url: 'url', // 目标URL
    type: 'GET', // 请求类型,可以是GET、POST、PUT、DELETE等
    dataType: 'json', // 预期服务器返回的数据类型
    data: {param1: 'value1', param2: 'value2'}, // 发送到服务器的数据
    beforeSend: function(xhr) {
        // 发送请求前可以在这里做些什么,例如设置自定义HTTP头部
    },
    success: function(response) {
        // 请求成功时的回调函数
        console.log(response);
    },
    error: function(xhr, status, error) {
        // 请求失败时的回调函数
        console.log(error);
    },
    complete: function(xhr, status) {
        // 请求完成时的回调函数(无论成功或失败)
    }
});

JSON

JSON是一种轻量级 的数据交换格式。
结构组成 :键值对组成或有序值列表。
基本规则:

  • 形式:"key":value
  • 有逗号隔开
  • 大括号{}保存对象
  • 中括号\[\]保存数组
  • 字符串必须使用双引号
  • 值可以是:字符串、数字、布尔值、数组、对象、null

示例:

name": "张三", "age": 30, "isStudent": false, "hobbies": "读书", "游泳", "address": { "city": "北京", "street": "朝阳路" }, "scores": 85, 92, 78, "graduate": null }

js中使用JSON

将json字符串转换为js对象(解析):JSON.parse()

javascript 复制代码
const jsonString = '{"name":"张三","age":25}';
const obj = JSON.parse(jsonString);
console.log(obj.age); // 输出: 25

将js对象转换为json字符串(序列化):JSON.stringigy()

javascript 复制代码
const person = {
  name: "李四",
  age: 28,
  isEmployed: true
};
const jsonString = JSON.stringify(person);
console.log(jsonString); // 输出: {"name":"李四","age":28,"isEmployed":true}
相关推荐
captain3764 小时前
▲统一功能——DispatcherServlet源码分析
java·spring·java-ee·log4j·maven
Hello_Pyhx11 小时前
NWinfo 导出 Windows 硬件信息:从 JSON 报告到缺项排查
windows·json
程序员大阳1 天前
副队长JavaScript教程(66)-本地存储实战:待办事项网页的开发
javascript·json·实战·待办事项·本地存储·案例
ikgy1 天前
JAVA EE:1.计算机是如何工作的
java·java-ee
.痞老板.1 天前
java ee--计算机是如何工作的
java·开发语言·java-ee
CoderYanger1 天前
Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)
java·数据库·spring·面试·职场和发展·java-ee·mybatis
张小姐的猫2 天前
【MySQL】访问 & 数据流动原理
android·数据库·mysql·adb·1024程序员节
视觉小萌新2 天前
AI Class 3 · Chapter 2-3:函数、异常、文件读写+JSON / JSONL 读写(小白版)
人工智能·python·json
从琳开始9892 天前
网络原理入门(二)------OSI七层模型?TCP/IP五层(四层)模型原来是这样的
java·网络·tcp/ip·java-ee·php
翊众建站3 天前
用 JSON-LD 给企业官网做结构化数据:LocalBusiness 与 FAQPage 实践笔记
人工智能·搜索引擎·json