我正在尝试使用 frisby.js 为端点指定 API 测试,该端点返回对有效 POST 请求的纯文本响应。但是,我在让 frysby.js 接受非 JSON 响应文档时遇到问题。每当响应返回非 JSON 内容时,抛出一个TypeError
due to 'Unexpected token b in JSON at position 0'
。
例如,我正在发送一个带有如下所示 JSON 文档的 HTTP POST 请求,预计将返回一个带有字符串的纯文本文档的响应bar
。
{
"foo":{
"name":"bar"
}
}
这是我为验证响应而编写的单元测试:
it('should create a foo resource', function () {
return frisby.post('http://localhost:8080/',
{
"foo":{
"name":"bar"
}
})
.expect('status',201);
});
不幸的是,当我运行测试时,frisby.js 会抛出以下错误:
FAIL ./test.js ✕ 应该创建一个 foo 资源(17ms)
● 应该创建一个 foo 资源
TypeError:无效的 json 响应正文:'bar' at http://localhost:8080/原因:'JSON 中位置 0 处的意外令牌 b'
有谁知道是否可以将每个测试配置为期望 JSON 以外的某些数据格式?