27_ajax.html 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <style>
  8. #cat img{
  9. width: 300px;
  10. height: 300px;
  11. }
  12. </style>
  13. </head>
  14. <body>
  15. <div id="cat">
  16. </div>
  17. <script src="./js/ajax.js"></script>
  18. <script>
  19. // ajax 基本原理
  20. // 第一步:创建一个对象实例
  21. // let xhr = new XMLHttpRequest();
  22. // // 第二步:打开连接
  23. // // 第一个参数:请求方法(GET、POST)
  24. // // 第二个参数:请求路径(/api/getData)
  25. // // 第三个参数:是否异步(true) true 表示异步请求,false 表示同步请求
  26. // xhr.open("GET", "https://api.thecatapi.com/v1/images/search");
  27. // // 第三步:发送请求
  28. // xhr.send();
  29. // // 第四步:接收响应
  30. // xhr.onreadystatechange = function () {
  31. // // onreadystatechange 事件:请求状态改变时触发
  32. // // readyState 属性:请求状态码,0-4 之间的整数
  33. // // 状态码:0-4
  34. // // 0:请求未初始化
  35. // // 1:服务器连接已建立
  36. // // 2:请求已接收
  37. // // 3:请求处理中
  38. // // 4:请求已完成
  39. // if (xhr.readyState === 4) {
  40. // // 请求已完成
  41. // // 判断请求是否成功 status
  42. // if (xhr.status === 200) {
  43. // // 请求成功
  44. // // 响应体:服务器返回的数据 responseText
  45. // console.log(xhr.responseText);
  46. // // 解析响应体
  47. // let data = JSON.parse(xhr.responseText);
  48. // console.log(data[0].url);
  49. // // 渲染到页面
  50. // var cat = document.querySelector("#cat");
  51. // cat.innerHTML = `<img src="${data[0].url}" alt="">`
  52. // }
  53. // }
  54. // }
  55. // ajax("GET","https://api.thecatapi.com/v1/images/search",function(res){
  56. // console.log("成功了",res);
  57. // });
  58. ajax("GET","./data/a.json",function(res){
  59. console.log("成功了",res);
  60. })
  61. </script>
  62. </body>
  63. </html>