moco-globalsettings

1.单个json文件

(1)目录配置

(2)新建foo.json

在project文件夹中新建foo.json

[{"request" : {"uri" : "/foo"},"response" : {"text" : "foo"}}
]

(3)执行&访问

windows在命令行cmd中:
java -jar moco-runner-0.10.2-standalone.jar start -p 12306 -c project/foo.json
浏览器中访问:
http://localhost:12306/foo

2.Golbal-Settings
We could put all configurations in one single configuration files. But if we want stub many services in a single Moco instance, the configurations file would be huge.
In this case, we can use settings file to separate our configurations for different into different configugration files.
意思是,当一个moco实例要对外提供非常多的json文件时候,可以用include将所有json文件统一注册

(1)准备json文件

bar.json
[{"request" : {"uri" : "/foo"},"response" : {"text" : "foo"}} ]
main.json
[{"include" : "project/foo.json"},{"include" : "
project/bar.json"
}
]
注意文件的路径,否则会抛找不到文件

(2)执行&访问

windows在命令行cmd中:
java -jar moco-runner-0.10.2-standalone.jar start -p 12306 -g project/main.json
浏览器中访问:
http://localhost:12306/foo
http://localhost:12306/bar

 


3.Context

We can put all responses for one service in a specified context:

context.json
[{"context": "/foo","include": "project/foo.json"},{"context": "/bar","include": "project/bar.json"} ]
windows在命令行cmd中:
java -jar moco-runner-0.10.2-standalone.jar start -p 12306 -g project/context.json
浏览器中访问:
http://localhost:12306/foo/foo
http://localhost:12306/bar/bar

 4.File Root

我们的目录结构是json文件都放在project下,每次写文件都要带着路径很麻烦,eg

{"include" : "project/bar.json" 
} 

而FileRoot功能可以让我们不用再加project了,全局享受相对路径。那么怎么做呢?

root.json
[{"file_root": "project", #你的相对路径文件夹"include": "too.json" #这边开始就不需要加文件夹了} ]
too.json
[{"request" : {"uri" : "/fileroot"},"response" : {"file" : "foo.json"}} ]
windows在命令行cmd中:
java -jar moco-runner-0.10.2-standalone.jar start -p 12306 -g project/root.json
浏览器中访问:
http://localhost:12306/fileroot

 

 5.Environment

For some different cases, you have different configuration. For example, your code may access proxy for remote server and mock server for local testing.

意思大概是,提供给远程使用的json和提供给本地使用的json可以区别对待

env.json
[{"env" : "remote","file_root": "project","include": "foo.json"},{"env" : "local","file_root": "project","include": "bar.json"}
]
windows在命令行cmd中:
java -jar moco-runner-0.10.2-standalone.jar start -p 12306 -g project/env.json -e remote
浏览器中访问:
http://localhost:12306/foo 能够返回数据
http://localhost:12306/bar    不能够返回数据
若换成”-e local“ ,就会相反


6.Request

You may need a global request matcher in some cases, for example, token for some REST APIs, which actually is request parameter. Global request will help you.

大概的意思就是,请求头中存在某特殊的东东,请求才会被接受。

修改evn.json

[{"request" : {"uri" : "/foo","headers" : {"foo" : "bar"}},"response" : {"text" : "foo", "headers" : {"foo" : "response"}}}
]
windows在命令行cmd中:
java -jar moco-runner-0.10.2-standalone.jar start -p 12306 -g project/env.json -e remote
浏览器中访问:
http://localhost:12306/foo 不能够返回数据

  因为浏览器Get请求,header中没有带 foo:bar 这个东西,所以请求被丢弃。

  那么如何构造header中带”foo:bar“,让请求顺利获取到response呢?我们用fiddler进行操作。

(1)下载fiddler,安装

(2)fiddler中,命令行输入 bpu  127.0.0.1 进行断点设置

       

(3)浏览器请求 http://127.0.0.1:12306/foo

    再fiddler中点击抓到的请求,右侧如图

       

(4)右键cache - add header ,输入 name:foo  value:bar

       点击break on response,再点击Run to Completion 获取结果

       

(5)看浏览器获取结果集

        ps,fiddler中再次输入bpu 回车,能够取消断点


 7.Response

       再6的基础上,查看response会看到 我们设置的结果集即”  "foo" : "response" 

       

 

转载于:https://www.cnblogs.com/lyt19871224/p/5113916.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/471200.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 2169. 得到 0 的操作数

文章目录1. 题目2. 解题1. 题目 给你两个 非负 整数 num1 和 num2 。 每一步 操作 中,如果 num1 > num2 ,你必须用 num1 减 num2 ; 否则,你必须用 num2 减 num1 。 例如,num1 5 且 num2 4 ,应该用 …

阿里云 腾讯云 服务器挂载数据盘

在默认拥有的腾讯云服务器是没有额外的数据盘的,默认Linux只有8GB系统盘,一般的网站也足够使用,如果额外购买的数据盘安装系统之后根据不同的面板、系统的路径问题可能不会自动加载到指定的数据盘目录,需要我们手工进行加载数据盘…

LeetCode 2171. 拿出最少数目的魔法豆(排序)

文章目录1. 题目2. 解题1. 题目 给你一个 正 整数数组 beans ,其中每个整数表示一个袋子里装的魔法豆的数目。 请你从每个袋子中 拿出 一些豆子(也可以 不拿出),使得剩下的 非空 袋子中(即 至少 还有 一颗 魔法豆的袋…

LeetCode 2176. 统计数组中相等且可以被整除的数对

文章目录1. 题目2. 解题1. 题目 给你一个下标从 0 开始长度为 n 的整数数组 nums 和一个整数 k &#xff0c;请你返回满足 0 < i < j < n &#xff0c;nums[i] nums[j] 且 (i * j) 能被 k 整除的数对 (i, j) 的 数目 。 示例 1&#xff1a; 输入&#xff1a;nums …

Web框架——Flask系列之Jinja2模板引擎(二)

Jinja2模板引擎简介 一、Jinja2模板概述 用来展示数据的html页面,这个过程也通常称为渲染,属于Jinja2的功能 使用模板的好处&#xff1a; 视图函数只负责业务逻辑和数据处理(业务逻辑方面)而模板则取到视图函数的数据结果进行展示(视图展示方面)代码结构清晰&#xff0c;耦合…

LeetCode 2177. 找到和为给定整数的三个连续整数

文章目录1. 题目2. 解题1. 题目 给你一个整数 num &#xff0c;请你返回三个连续的整数&#xff0c;它们的 和 为 num 。 如果 num 无法被表示成三个连续整数的和&#xff0c;请你返回一个 空 数组。 示例 1&#xff1a; 输入&#xff1a;num 33 输出&#xff1a;[10,11,12]…

LeetCode 2178. 拆分成最多数目的偶整数之和(等差数列求和)

文章目录1. 题目2. 解题1. 题目 给你一个整数 finalSum 。请你将它拆分成若干个 互不相同 的偶整数之和&#xff0c;且拆分出来的偶整数数目 最多 。 比方说&#xff0c;给你 finalSum 12 &#xff0c;那么这些拆分是 符合要求 的&#xff08;互不相同的偶整数且和为 finalS…

Web框架——Flask系列之CSRFToken详解(四)

CSRF(理解) 一. 什么是CSRFToken? CSRF全拼为Cross Site Request Forgery&#xff0c;译为跨站请求伪造。CSRF指攻击者盗用了你的身份&#xff0c;以你的名义发送恶意请求。 包括&#xff1a;以你名义发送邮件&#xff0c;发消息&#xff0c;盗取你的账号&#xff0c;甚至于…

apache ab test使用 单独安装ab和htpasswd

apache ab test使用 apache ab test使用 单独安装ab和htpasswd 转载自&#xff1a; http://www.cnblogs.com/super-d2/p/3831155.html#top http://blog.chinaunix.net/uid-20382003-id-3032167.html 注意&#xff1a;ab test是不支持长连接压测的&#xff0c;只支持短连接压测 …

LeetCode 2180. 统计各位数字之和为偶数的整数个数

文章目录1. 题目2. 解题1. 题目 给你一个正整数 num &#xff0c;请你统计并返回 小于或等于 num 且各位数字之和为 偶数 的正整数的数目。 正整数的 各位数字之和 是其所有位上的对应数字相加的结果。 示例 1&#xff1a; 输入&#xff1a;num 4 输出&#xff1a;2 解释&a…

LeetCode 2181. 合并零之间的节点(链表)

文章目录1. 题目2. 解题1. 题目 给你一个链表的头节点 head &#xff0c;该链表包含由 0 分隔开的一连串整数。 链表的 开端 和 末尾 的节点都满足 Node.val 0 。 对于每两个相邻的 0 &#xff0c;请你将它们之间的所有节点合并成一个节点&#xff0c;其值是所有已合并节点的…

Web框架——Flask系列之模板使用练习(六)

一、实现的效果如下: 二、实现要求&#xff1a; 给定如下5条数据,只显示4行数据&#xff0c;背景颜色依次为&#xff1a;黄&#xff0c;绿&#xff0c;红&#xff0c;紫 my_list [{"id": 1,"value": "我爱工作"},{"id": 2,"va…

Android安全研究经验谈

安全研究做什么从攻击角度举例&#xff0c;可以是&#xff1a;对某个模块进行漏洞挖掘的方法&#xff0c;对某个漏洞进行利用的技术&#xff0c;通过逆向工程破解程序、解密数据&#xff0c;对系统或应用进行感染、劫持等破坏安全性的攻击技术等。而防御上则是&#xff1a;查杀…

LeetCode 2182. 构造限制重复的字符串(贪心、map)

文章目录1. 题目2. 解题1. 题目 给你一个字符串 s 和一个整数 repeatLimit &#xff0c;用 s 中的字符构造一个新字符串 repeatLimitedString &#xff0c;使任何字母 连续 出现的次数都不超过 repeatLimit 次。你不必使用 s 中的全部字符。 返回 字典序最大的 repeatLimited…

Web框架——Flask系列之WTF表单验证练习(七)

一、Web表单 web表单是web应用程序的基本功能。 它是HTML页面中负责数据采集的部件。表单有三个部分组成&#xff1a;表单标签、表单域、表单按钮。表单允许用户输入数据&#xff0c;负责HTML页面数据采集&#xff0c;通过表单将用户输入的数据提交给服务器。 在Flask中&…

LeetCode 2185. 统计包含给定前缀的字符串

文章目录1. 题目2. 解题1. 题目 给你一个字符串数组 words 和一个字符串 pref 。 返回 words 中以 pref 作为 前缀 的字符串的数目。 字符串 s 的 前缀 就是 s 的任一前导连续字符串。 示例 1&#xff1a; 输入&#xff1a;words ["pay","attention",…

Web框架——Flask系列之Flask-SQLAlchemy安装与使用 定义数据模型(八)

Flask-SQLAlchemy安装及设置 SQLALchemy 实际上是对数据库的抽象&#xff0c;让开发者不用直接和 SQL 语句打交道&#xff0c;而是通过 Python 对象来操作数据库&#xff0c;在舍弃一些性能开销的同时&#xff0c;换来的是开发效率的较大提升SQLAlchemy是一个关系型数据库框架…

多线程篇-NSThread-简单使用

创建的三种方式 第一种 介绍/*alloc init 创建第一个参数&#xff1a;目标对象第二个参数&#xff1a;选择器&#xff0c;线程启动要调用哪个方法第三个参数&#xff1a;前面方法要接收的参数&#xff08;最多只能接收一个参数&#xff0c;没有则传nil&#xff09;*/ NSThread …

LeetCode 2186. 使两字符串互为字母异位词的最少步骤数

文章目录1. 题目2. 解题1. 题目 给你两个字符串 s 和 t 。在一步操作中&#xff0c;你可以给 s 或者 t 追加 任一字符 。 返回使 s 和 t 互为 字母异位词 所需的最少步骤数。 字母异位词 指字母相同但是顺序不同&#xff08;或者相同&#xff09;的字符串。 示例 1&#xf…

Web框架——Flask系列之Flask-SQLAlchemy数据库的基本操作(九)

数据库基本操作 在Flask-SQLAlchemy中&#xff0c;插入、修改、删除操作&#xff0c;均由数据库会话管理。 会话用 db.session 表示。在准备把数据写入数据库前&#xff0c;要先将数据添加到会话中然后调用db.session.commit()方法提交会话。 db.session.add&#xff08;role&…