AXIOS测试

发布时间 2023-10-11 17:23:57作者: 空嘘一场

AXIOS

 

 

1.注册测试

 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>注册页面</title>
 7     <!-- 引入vue -->
 8     <script src="../js/vue.js"></script>
 9     <!-- 引入axios -->
10     <script src="../js/axios.js"></script>
11     
12 </head>
13 <body>
14     <div id="root">
15         姓名:<input type="text" v-model="user.name"><br/>
16         年龄:<input type="text"  v-model="user.age"><br/>
17         邮箱:<input type="text"  v-model="user.email"><br/>
18         <button @click="registerHandler">注册</button>  
19     </div>
20     
21     
22     <script>
23         //创建一个Vue对象实例
24         new Vue({
25             el:'#root',//el用于指定当前Vue实例为那个容器服务,值通常是css选择器(id选择器)
26 
27             data:{//data属性用于存储页面渲染的数据
28                user:{
29                 name:'',
30                 age:'',
31                 email:''
32                }
33             },
34             methods:{
35                 registerHandler(){
36                     //向服务器发送ajax请求(携带注册用户信息)   //参数1:url地址 参数2:请求参数(可选)
37                     axios.post("http://localhost:8080/register",this.user).then(response=>{
38                         //注意response。data代表服务器返回的数据对象
39                         alert(response.data.data)
40                         alert(response.data.code)
41                         alert(response.data.message)
42                     })
43                 }
44             }
45         })
46 
47     </script>
48 </body>
49 </html>

2.从后端获取数据渲染到前端页面测试

index.html

 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>表格渲染</title>
 7     <script src="../js/vue.js"></script>
 8         <!-- 引入AXIOS  -->
 9     <script src="../js/axios.js"></script>
10 </head>
11 <body>
12     <div id="root">
13         <table border="1">
14             <tr>
15                 <th>编号</th>
16                 <th>姓名</th>
17                 <th>操作</th>
18                 <th>操作</th>
19             </tr>
20             <tr v-for="(person,index) of persons" :key="person.id">
21                 <td>{{person.id}}</td>
22                 <td>{{person.name}}</td>
23                 <td>{{person.age}}</td>
24                 <td><button @click="showInfoHandle(person)">点击</button></td>
25             </tr>
26         </table>
27     </div>
28     
29     <script>
30         new Vue({
31             el:'#root',
32             data:{
33                 name:'zhangsan',
34                 persons:[
35                 ]
36             },
37             mounted(){
38                 axios.get("http://localhost:8080/getAll").then(persons=>{
39                     this.persons = persons.data.data;
40                 })
41             }
42         })
43         </script>
44 </body>
45 </html>

PersonController.java

 1 package com.cn.springbootdemo.controller;
 2 
 3 import com.cn.springbootdemo.entity.PersonDto;
 4 import com.cn.springbootdemo.util.ResultVo;
 5 import lombok.extern.slf4j.Slf4j;
 6 import org.springframework.web.bind.annotation.CrossOrigin;
 7 import org.springframework.web.bind.annotation.RequestMapping;
 8 import org.springframework.web.bind.annotation.RestController;
 9 
10 import java.util.ArrayList;
11 import java.util.List;
12 
13 /**
14  * @Author hxy
15  * @Description
16  * @Date 2023/10/11 16:53
17  * @Version 1.0
18  */
19 @RestController
20 @Slf4j
21 @CrossOrigin
22 public class PersonController {
23     @RequestMapping("getAll")
24     public ResultVo<List<PersonDto>>  getAll() {
25         PersonDto personDto1 = new PersonDto(1,"张三", 20);
26         PersonDto personDto2 = new PersonDto(2,"李四", 21);
27         PersonDto personDto3 = new PersonDto(3,"王五", 23);
28         List<PersonDto> list = new ArrayList<>();
29         list.add(personDto1);
30         list.add(personDto2);
31         list.add(personDto3);
32         return ResultVo.success(list);
33     }
34 }

PersonDto.java

 1 package com.cn.springbootdemo.entity;
 2 
 3 import lombok.AllArgsConstructor;
 4 import lombok.Data;
 5 import lombok.NoArgsConstructor;
 6 
 7 /**
 8  * @Author hxy
 9  * @Description
10  * @Date 2023/10/11 16:52
11  * @Version 1.0
12  */
13 @Data
14 @AllArgsConstructor
15 @NoArgsConstructor
16 public class PersonDto {
17     private int id;
18     private String name;
19     private int age;
20 }