栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

测试restful API 设计

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

测试restful API 设计

测试restful API 设计
  1. form表单测试restful
  2. ajax测试restful

5种提交类型(method)

GET(SELECT):从服务器取出资源(一项或多项)
POST(CREATE):在服务器新建一个资源。
PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。
PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)
DELETE(DELETE):从服务器删除资源。

表单测试restful

首先创一个实体类进行传参测试
Student.class

public class Student {
    String stname;
    int age;
    Date birthday;

    public String getStname() {
        return stname;
    }

    public void setStname(String stname) {
        this.stname = stname;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    @Override
    public String toString() {
        return "Student{" +
                "stname='" + stname + ''' +
                ", age=" + age +
                ", birthday=" + birthday +
                '}';
    }
}

再创表单进行测试
核心代码如下:

测试--ADD
    
Name Age Birthday
测试--FIND
测试--DEL 失败
测试--UPDATE 失败
Name Age Birthday

再创建实现类RestfulController.java

public class RestfulController {
    @RequestMapping(path = "/student",method = RequestMethod.POST)
    public String add(Student student){
        System.out.println("add...."+student);
        return "success";
    }
    @RequestMapping(path = "/student/{sid}",method = RequestMethod.DELETE)
    public String del(@PathVariable("sid") int sid){
        System.out.println("del...."+sid);
        return "success";
    }
    @RequestMapping(path = "/student",method = RequestMethod.PUT)
    public String update(Student student){
        System.out.println("update...."+student);
        return "success";
    }
    @RequestMapping(path = "/student",method = RequestMethod.GET)
    public String find(){
        System.out.println("find....");
        return "success";
    }

}

测试后得知ADD和FIND方法可用
由于浏览器只支持post和get请求,所以我们得进行配置
web.xml

  
    MyHttp
    org.springframework.web.filter.HiddenHttpMethodFilter
  
  
    MyHttp
    /*
  

表单中只要给name为_method的value设置为get或者post即可.
并且tomcat的版本需要在8.0以下才支持.

AJAX测试restful

代码如下:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    ajax restful测试
    
    


    
    
    
    

总结
  • 实现类中的@RequestMapping注释需加入参数:path(路径)method(传值方法如:RequstMethod.POST)
  • 用ajax测试需要在实现类上方加入注释@ResponseBody表明该实现类为ajax请求
  • 使用restful必须保证tomcat版本为8.0以下并且需要在web,xml配置相应的信息
  • 跨域问题只需要在该方法上加上注释@CrossOrigin //支持跨域
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/389706.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号