<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Mocking on Wenhan blog</title>
    <link>https://wenhan.blog/zh/tags/mocking/</link>
    <description>Recent content in Mocking on Wenhan blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-CN</language>
    <lastBuildDate>Tue, 17 May 2022 13:58:39 +0900</lastBuildDate><atom:link href="https://wenhan.blog/zh/tags/mocking/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>试用 Kong 的 Mocking 插件</title>
      <link>https://wenhan.blog/zh/posts/20220517_using-kong-mocking-plugin/</link>
      <pubDate>Tue, 17 May 2022 13:58:39 +0900</pubDate>
      
      <guid>https://wenhan.blog/zh/posts/20220517_using-kong-mocking-plugin/</guid>
      <description>介绍 Mocking 插件为开发中的 API 提供模拟端点，便于测试。它基于 Open API（OAS）规范，对发送到 API 的请求返回模拟响应。为了测试的灵活性，Mocking 插件可以很方便地启用或禁用。 https://docs.konghq.com/hub/kong-inc/mocking/
注意：该插件只能返回 200、201 和 204 响应。它是为测试正常流程而设计，无法返回 200 以外的状态码。
本文将以 Docker 容器方式搭建 db-less 的 Kong Gateway 环境，并在其上试用 Mocking 插件。
部署 Kong Gateway 之前 由于是 db-less 环境，无法通过 Admin API 或 GUI 修改配置（因为没有存储位置）。因此，启动容器时需要提前准备好名为 Declarative Configuration 的配置文件。
https://docs.konghq.com/gateway/2.8.x/reference/db-less-and-declarative-config/#main
本次的目标是试用 Mocking，所以也要在该文件中写好 Mocking 的相关配置。正如 Mocking 插件介绍页面 所述，配置本身非常简单，关键参数有 api_specification 和 api_specification_filename：
api_specification_filename：指定保存规范内容的文件名。 api_specification：直接将规范内容作为参数写入。 如果用 api_specification_filename，需要提前将文件上传到 Dev Portal，并且只写文件名，不带路径。示例见这里。但本次我们用 db-less 环境，无法使用 Dev Portal，因此不能用 api_specification_filename。
所以我们直接在 api_specification 里写入 API 规范的示例内容，然后启动容器。规范示例可参考 Mocking 插件介绍页面。</description>
    </item>
    
  </channel>
</rss>
