spring boot json接口测试,在idea和在postman

当使用SpringBoot开发API时,遇到'Unsupported MediaType'问题,通常是Content-Type不匹配导致。解决方法是在请求中设置Content-Type为'application/json'。示例中展示了如何创建一个接收JSON的RESTful接口,并通过Postman进行测试。确保在请求头中添加正确的Content-Type。
摘要由CSDN通过智能技术生成

spring boot报Unsupported Media Type Content type '*/*;charset=UTF-8' not supported

1.请求设置Content-Type:application/json即可

ajax一般默认:Content-Type: application/x-www-form-urlencoded;charset=utf-8

2.服务端:

 controller

 

package com.example.demo;

import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class helloController {
    @RequestMapping(value="/hello")
    public String say(){
        String str="my spring boot web project hihihi";
        System.out.println(str);
        return str;
    }

    @RequestMapping(value="/test")
    public String testObj(@RequestBody User user){

        System.out.println(user.toString());
        return user.toString();
    }
}

 

实体user

 

package com.example.demo;

public class User {
    private String userName;
    private String pwd;

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    public String toString(){
        return userName+""+pwd;
    }
}

 

3.输出

 

 

postman中测试json接口

1、接口链接如下:https://ddd.com/api/contract/core/order/open
2、参数如下:
{
“assureAsset”: “EXT”,
“assureQuantity”: 0,
“baseAsset”: “BTC”,
“buyQuantity”: 0.005,
“buySide”: “long”,
“multiple”: 50.0,
“openPrice”: 0,
“quoteAsset”: “USDT”,
“symbol”: “BTC_USDT”
}
3、在postman里面参数添加到body里面,如下图:
在这里插入图片描述
4、请求头里面的参数要除了认证和客户端之外,一定要包含:content-type,如下图所示:
在这里插入图片描述
区别于直接在params填写参数的种类,在之前的文章里我们提到过,如果是一般的接口,那么在headers里面要包括如下参数:

在这里插入图片描述

好的,以下是简单的步骤: 1. 创建Spring Boot项目,添加MyBatis-Plus和相关依赖: ```xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.x.x</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.2.6</version> </dependency> ``` 2. 配置数据库连接和MyBatis-Plus: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/book?useUnicode=true&characterEncoding=UTF-8&useSSL=false username: root password: root driver-class-name: com.mysql.cj.jdbc.Driver # MyBatis-Plus配置 mybatis-plus: mapper-locations: classpath:mapper/*.xml type-aliases-package: com.example.book.entity ``` 3. 创建实体类和Mapper接口: ```java @Data public class Book { private Long id; private String name; private String author; private BigDecimal price; } public interface BookMapper extends BaseMapper<Book> { } ``` 4. 创建控制器类,实现RESTful接口: ```java @RestController @RequestMapping("/api/books") public class BookController { @Autowired private BookMapper bookMapper; @GetMapping("") public List<Book> list() { return bookMapper.selectList(null); } @GetMapping("/{id}") public Book get(@PathVariable Long id) { return bookMapper.selectById(id); } @PostMapping("") public boolean add(@RequestBody Book book) { return bookMapper.insert(book) > 0; } @PutMapping("/{id}") public boolean update(@PathVariable Long id, @RequestBody Book book) { book.setId(id); return bookMapper.updateById(book) > 0; } @DeleteMapping("/{id}") public boolean delete(@PathVariable Long id) { return bookMapper.deleteById(id) > 0; } } ``` 5. 使用Postman进行测试,例如: - GET请求:http://localhost:8080/api/books - POST请求:http://localhost:8080/api/books,请求体为: ```json { "name": "Java编程思想", "author": "Bruce Eckel", "price": 99.99 } ``` 以上就是使用MyBatis-Plus和Spring Boot框架完成服务器端应用开发的简单步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值