问题标签 [mountebank]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
predicate - 为什么 Mountebank 谓词会导致 200 而不是 500 作为响应?
自学mountebank。我想创建一个模拟端点,以便通过向http://localhost:2525/test?mock-response-code=500发出 POST 命令,响应代码将为 500,消息正文将是一些自定义文本。
但是,当我创建冒名顶替者并运行相关的 curl 命令时,我得到了 200 响应。
createImposter_r500.ejs:
以下是我尝试使用该 URL 时发生的情况:
这是一些调试输出:
(端口与上面的 b/c 不同,它来自不同的运行。)
mountebank - 在多个存根中使用 Mountebank 复制行为
是否可以在 Mountebank 存根之间共享变量?
这是一个高级示例:
存根 A:
存根 B:
我为存根 B 尝试的复制 _behavior 方法似乎无法识别存根 A 中指定的变量。从文档来看,似乎我无法在这些存根之间使用复制。
javascript - 如何从 mountebank 响应块中的另一个 js 文件调用函数
我有一个关于 mountebank 响应的装饰的问题。我未能从响应代码块中的另一个 js 文件调用函数。任何人都可以给我一个提示?
我的 js 文件:utils.js
mountebank 中的响应代码是
错误是:
{"errors":[{"message":"Converting circular structure to JSON","name":"TypeError","stack":"TypeError: Converting circular structure to JSON\n at JSON.stringify (<anonymous>)\n at responsePromise.then.response (/Users/xinxing.cheng/Documents/app/node_modules/mountebank/src/models/behaviors.js:251:48)\n at _fulfilled (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:854:54)\n at /Users/xinxing.cheng/Documents/app/node_modules/q/q.js:883:30\n at Promise.promise.promiseDispatch (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:816:13)\n at /Users/xinxing.cheng/Documents/app/node_modules/q/q.js:877:14\n at runSingle (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:137:13)\n at flush (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:125:13)\n at process._tickCallback (internal/process/next_tick.js:61:11)"}]}
request - 分析 gzip 请求
我正在探索 mountebank 并且有一个案例,我需要分析 gzip 压缩的 json 请求以创建返回适当响应的谓词。我可以解压缩 json 请求并使用 mountebank 分析 json 吗?
mountebank - mountebank如何将2个冒名顶替者合并到一个文件中
我有 2 个应用程序,每个应用程序都使用相同的 mountebank(docker 映像)。
我维护了 2 个独立的“冒名顶替者”文件,因为我们在不同的机器上运行应用程序。
我想在同一台机器上运行 2 个应用程序,只维护一个 mountebank docker 映像。如何将文件合并为 1?
mockserver - Mountebank - 如何在 mountebank 的 POST 请求中断言消息正文是 JSON 格式
我想在 mountebank 的 POST 请求中存根并检查消息正文,
如果是 JSON 格式的消息正文。预期响应状态代码 200。
例如
如果是 JSON 格式的消息正文,但 JSON 字符串。预期响应状态代码 400。
例如
asp.net - docker asp.net 日志配置也启用日志错误
应用程序使用Microsoft.Extensions.Logging
这是在 appsettings.json 中配置的
然后我使用 mountebank 作为配置服务器。在冒名顶替者文件
如何使所有日志也包含错误?
node.js - Mountebank 管道视频文件流以响应不工作
我试图让 Mountebank 将读取的文件流管道从我的.ts
MPEG-2 文件返回到 Mountebank 注入,以便客户端可以接收流数据并播放视频。关于如何读入文件有一个有用的节点实现,我让它读入文件,但现在它似乎被第一个文件.m3u8
卡住了。.ts
Node 似乎正在将.ts
文件作为流读取并将其传送到 response stream.pipe(res)
。我不确定这如何转化为 Mountebank。这是我的 Mountbank 代码:
山岸:
我用纯节点实现尝试了这个,它可以工作,但是,当我将它移植到 Mountebank 时,我得到一个控制台日志错误,并出现以下错误:
不确定我在这里缺少什么,Mountebank 不支持流响应吗?我什至尝试.ts
使用但 hls.js 读取文件,const data = fs.readFileSync(filepath)
但似乎不喜欢这样并得到承诺拒绝。
predicate - Mountebank 使用了错误的谓词并忽略了 contains 中的值
我尝试了他们的文档,但它非常“基本”,所以希望这里有人能发现我的问题?我有 2 个谓词,一个使用错误的用户,一个使用正确的用户。用户的 base64 是通过 post-body 发送的,但似乎contains
Mountebank 只是简单地忽略它并选择一个包含另一个包含值的谓词......为什么会这样?
我的要求是dX...2g=
:
但是 Mountebank 将谓词与 匹配dX...Gln
:
包含不匹配,并且仍然使用该谓词,即使我的存根确实包含匹配的谓词,但它没有被使用:
我的语法错了吗?它匹配第一个谓词,即使它不包含dXNlcjpmYWxzY2g=
It does work using equals
,我只是好奇为什么contains
不包含。