• Ajax学习:Ajax请求基本操作


    点击按钮,发送请求(前端页面和服务端页面信息交流 但是不刷新页面)

    注意使用谷歌浏览器

    服务器端打开:使用nodemon

    1. //1、导入express
    2. const express=require('express')
    3. //2、创建应用对象 创建web服务器
    4. const app=express()
    5. //3、创建路由规则
    6. //监听客户端的GET请求和POST请求,并向客户端响应具体内容
    7. //requset是对请求报文的封装
    8. //response是对响应报文的封装
    9. app.get('/server',function(requset,response){
    10. //设置响应头 名称 值----设置允许跨域
    11. response.setHeader('Access-Control-Allow-Origin','*');
    12. //设置响应体
    13. response.send('hello AJAX');
    14. })
    15. //4、监听端口 启动服务
    16. //启动服务器.lisen(端口号,(启动成功职之后的回调函数)) 端口号是80可以省略
    17. app.listen(8000,()=>{
    18. console.log('8000启动成功')
    19. })

    服务器端对http://127.0.0.1:8000/server的GET请求设置了

    响应头 Access-Control-Allow-Origin:*  

    响应体hello AJAX

    这时候客户端即浏览器发送请求,并接收读取服务端的响应

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Ajax GET 请求title>
    8. <style>
    9. #result {
    10. width: 200px;
    11. height: 100px;
    12. border: solid 1px #90b;
    13. }
    14. style>
    15. head>
    16. <body>
    17. <button>点击发送请求button>
    18. <div id="result">div>
    19. <script>
    20. //获取bTn元素
    21. const btn = document.getElementsByTagName('button')[0];
    22. const result=document.getElementById('result');
    23. //绑定事件
    24. btn.onclick = function () {
    25. //Ajax操作--分为4个步骤
    26. //1、创建对象
    27. const xhr = new XMLHttpRequest();//xhr简写 然后是在网络控制台上也有xhr 对ajax请求的筛选
    28. //2、初始化 设置请求方法和url 这里不可以省略
    29. xhr.open('GET', 'http://127.0.0.1:8000/server');
    30. //3、发送
    31. xhr.send();
    32. //4、事件绑定 处理服务端返回的结果
    33. //onreadystatechange代表:当 xhr对象中的属性readystate 改变的时候触发
    34. //xhr对象中的属性 readystate标识状态
    35. //有5个值 0:标识为初始化 1 标识open方法调用完毕 2 send方法调用完毕 3:服务端返回的部分结果 4 服务端返回的所有结果
    36. //改变一次触发一次 总共有4次
    37. xhr.onreadystatechange = function () {
    38. //判断服务端是否返回了所有结果
    39. if (xhr.readyState === 4) {
    40. //判断服务端返回的响应状态码 200 404 403 401 500
    41. //2xx是成功
    42. if(xhr.status<300&&xhr.status>=200){
    43. //处理结束 行 头 空行 体
    44. //1、响应行
    45. console.log('响应状态码',xhr.status,'响应字符串',xhr.statusText);//响应状态码+响应状态字符串
    46. console.log('所有的响应头',xhr.getAllResponseHeaders());
    47. console.log('响应体',xhr.response);
    48. //在div中呈现
    49. result.innerHTML=xhr.response;
    50. }else{
    51. }
    52. }
    53. }
    54. }
    55. script>
    56. body>
    57. html>

    使用jscript;一共分为4步骤

      //1、创建对象

        const xhr = new XMLHttpRequest();//xhr简写 然后是在网络控制台上也有xhr 对ajax请求的筛选

    //2、初始化对象 参数为设置请求方法和url 地址这里不可以省略

      xhr.open('GET', 'http://127.0.0.1:8000/server');

     //3、发送对象

       xhr.send();

     //4、事件绑定  处理服务端返回的结果 //onreadystatechange代表:当 xhr对象中的属性readystate 改变的时候触发

    //xhr对象中的属性 readystate标识状态有5个值 0:标识为初始化 1 标识open方法调用完毕 2 send方法调用完毕 3:服务端返回的部分结果 4 服务端返回的所有结果//改变一次触发一次 总共有4次

     响应状态码',xhr.status

    响应字符串',xhr.statusText

    所有的响应头',xhr.getAllResponseHeaders()

    响应体',xhr.response

    1. xhr.onreadystatechange = function () {
    2. //判断服务端是否返回了所有结果
    3. if (xhr.readyState === 4) {
    4. //判断服务端返回的响应状态码 200 404 403 401 500
    5. //2xx是成功
    6. if(xhr.status<300&&xhr.status>=200){
    7. //处理结束 行 头 空行 体
    8. //1、响应行
    9. console.log('响应状态码',xhr.status,'响应字符串',xhr.statusText);//响应状态码+响应状态字符串
    10. console.log('所有的响应头',xhr.getAllResponseHeaders());
    11. console.log('响应体',xhr.response);
    12. //在div中呈现
    13. result.innerHTML=xhr.response;
    14. }else{
    15. }
    16. }

    响应头部分  

    响应体部分 

     

     

  • 相关阅读:
    ipsec vxn详解
    电脑Win11安装Autocad出现错误要如何处理
    [论文阅读]NeurIPS 2021论文预讲会总结
    golang学习笔记——类型转换
    Linux 驱动扫描所有线程调用栈
    GB28181视频监控国标平台EasyGBS如何更流畅进行接口调用?操作指南来了
    SQL语法之JOIN
    【机械】二维钢桁架分析与设计附matlab代码
    MySQL事务、索引、数据恢复和备份
    【语言模型】深入探索语言模型中的神经网络算法:原理、特点与应用
  • 原文地址:https://blog.csdn.net/weixin_47295886/article/details/128084715