javascript - Jasmine javascript:如何在创建帖子时检查响应以创建一些属性?
问题描述
我有以下回应;如何通过包含 userid 的响应来验证它是否已创建?
({
id: '612bd3f42ca01806398da144',
data: Object({
createdOn: '2021-08-29T18:37:39.693Z',
lastUpdatedBy: null,
userId: '60f469cf784379051298e96d',
displayName: 'Nadia',
postText: null,
postImages: [],
pluginInstance: Object({
pluginInstanceId: '1627334094776-047554258642281355',
pluginInstanceTitle: 'communityFeedPlugin'
}),
isPublic: false,
_buildfire: Object({
index: Object({
array1: [Object({
string1: 'userId_60f469cf784379051298e96d'
}), Object({
string1: 'displayName_nadia'
}), Object({
string1: 'pluginTitle_communityfeedplugin'
}), Object({
string1: 'isPublic_0'
})]
})
})
}),
tag: 'posts'
})
解决方案
如果我做对了,您需要知道 userId 属性是否存在/真实。
鉴于响应存储在jsonBody
变量中,请使用如下 if 语句:
if (jsonBody.data.userId) {
...
}
此外,请确保正确解析 JSON 中的响应,以便您可以导航它。
如果您首先需要知道响应是否存在,您可以添加另一个 if 检查:
if (jsonBody) {
...
if (jsonBody.data.userId) {...}
...
}
或者在一个 if 语句中加入两个检查:
if (jsonBody && jsonBody.data.userId) {...}
无论如何,使用正确传达请求状态的后端是一个好习惯,这样您就可以编写更简洁的代码,避免这种类型的检查并在很大程度上依赖状态代码。
推荐阅读
- class - Kotlin 类的工作不如预期
- docker - Spotify Docker 构建主机网络
- swift - 如何在 SwiftUI 中创建分段按钮?
- python - 如何在 numpy 中过滤具有 3 维的数组
- cocoapods - 无效的“Podfile”文件:无法找到可执行的“节点”
- python - 使用 uncompyle6 将 .pyc 文件转换为 .py 文件(错误的编组数据错误)
- winforms - 如何使用外部 .config 文件解析键/值对
- javascript - 在发布 npm 时,得到 npm publish npm ERR!403 Forbidden PUT https//registryname/ - 禁止
- python - 运行调度程序以执行一个函数,其中调度程序数据和函数输入存储在 pandas 数据框中
- html - 我有一个没有 的 Break 行
,为什么?