如何将二进制缓冲区请求主体与 Nock 匹配?
How to match a binary buffer request body with Nock?
我是 Node/TypeScript
的新手,我写了一个简单的脚本来学习这门语言。
我正在使用 nock 进行测试,以使用 RequestBodyMatcher
检查我的 http post 请求。目前,它是虚拟的(见下文)。现在我想实现匹配器并实际检查请求体。
const requestBodyMatcher = (body: any) => true; // todo: check the body !!!
nock('http://api.michael.com')
.post('/myendpoint', requestBodyMatcher)
.reply(200);
我的请求正文是二进制缓冲区(一些压缩数据),但我的 requestBodyMatcher
函数是用 body:string
调用的,而不是我检查过的 body:Buffer
。您有匹配 二进制缓冲区 请求正文的示例吗?
正如评论中所说 RequestBodyMatcher
收到一个 stringified 请求正文,所以我必须 unstrigify 它 Buffer.from
和 hex
编码:
const requestBodyMatcher = (body: any) => {
const buf = Buffer.from(body, 'hex')
// check "buf" and return a boolean result
};
我是 Node/TypeScript
的新手,我写了一个简单的脚本来学习这门语言。
我正在使用 nock 进行测试,以使用 RequestBodyMatcher
检查我的 http post 请求。目前,它是虚拟的(见下文)。现在我想实现匹配器并实际检查请求体。
const requestBodyMatcher = (body: any) => true; // todo: check the body !!!
nock('http://api.michael.com')
.post('/myendpoint', requestBodyMatcher)
.reply(200);
我的请求正文是二进制缓冲区(一些压缩数据),但我的 requestBodyMatcher
函数是用 body:string
调用的,而不是我检查过的 body:Buffer
。您有匹配 二进制缓冲区 请求正文的示例吗?
正如评论中所说 RequestBodyMatcher
收到一个 stringified 请求正文,所以我必须 unstrigify 它 Buffer.from
和 hex
编码:
const requestBodyMatcher = (body: any) => {
const buf = Buffer.from(body, 'hex')
// check "buf" and return a boolean result
};