如何使用postman10 mock一个接口并设置返回参数为json

本来今天高高兴兴,换了新电脑、下载了现在最新的postman版本(v10.0.7)。没想到几年的时间,mock操作已经改得不会用了。 落泪踩坑并记录下走默认mock配置,导致http接口接收不到返回值的问题

一、如何mock一个接口

postman操作

在这里插入图片描述
在这里插入图片描述

看见这个界面就是简单的配置完成啦~
在这里插入图片描述
在这里可以调用我们之前配置的mock服务,点击send后能看到我们配置的response body
在这里插入图片描述

代码调用接口

我这里是使用的SpringCloud的@FeignClient调用

@FeignClient(url = "https://ea6d6f75-9537-4701-ad88-54d1de82f4ba.mock.pstmn.io", name = "demo")
public interface DemoClient {

    @GetMapping("/my/path1")
    Map<String, Object> func();
}

但是!执行报错:
feign.codec.DecodeException: Could not extract response: no suitable HttpMessageConverter found for response type [***] and content type [text/html;charset=utf-8]

Caused by: org.springframework.web.client.UnknownContentTypeException: Could not extract response: no suitable HttpMessageConverter found for response type [***] and content type [text/html;charset=utf-8]
在这里插入图片描述
大概翻译翻译就是之前mock的服务默认的content type是[text/html;charset=utf-8]。也就是被当成是html的字符串了,只能返回String。而我在这里想用的map来接收,或者用一个pojo类来接收,都无法从字符串转换过来,而是需要一个json。

那么怎么让mock服务返回一个json对象呢?postman在Collections页签下提供了方法。详情入下:

二、如何详细设置mock的请求与返回

在这个界面可以修改之前配置的mock服务的request和response。
在这里插入图片描述
之前在mock service界面只是简单的配置了respons的body。在这个界面不仅可以修改之前配置的body,还能修改request和response的header。
在这里插入图片描述
在response的header里,增加一项配置Content-Type: application/json,保存一下。

再重新在代码内调用一下,已经能正常接收到了
在这里插入图片描述

三、一图流总结:

在这里插入图片描述

个人理解可能不准确,具体详情可参考官网学习中心

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值