首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我的add friend测试路径在insomina中通过了200OK,但当我调用获取所有用户时,它却没有嵌套?

根据提供的问答内容,我将尝试给出一个完善且全面的答案。

首先,根据问题描述,你在进行测试时遇到了一个问题:在使用 Insomnia 进行测试时,添加好友的测试路径返回了 200 OK 的状态码,但是当调用获取所有用户的接口时,却没有嵌套好友关系。

这个问题可能有多个原因导致,下面我将从几个可能的角度进行分析和解答。

  1. 接口设计问题: 首先,需要确认你的接口设计是否合理。在添加好友的接口中,是否有将好友关系正确地嵌套到用户信息中?在获取所有用户的接口中,是否正确地返回了用户信息以及对应的好友关系?需要仔细检查接口设计和实现的逻辑。
  2. 数据库查询问题: 如果接口设计没有问题,那么可能是在获取所有用户的接口中,查询数据库时出现了问题。需要确认查询语句是否正确,是否正确地关联了用户信息和好友关系。同时,还需要检查数据库中的数据是否正确,是否包含了正确的好友关系。
  3. 接口调用顺序问题: 另外一个可能的原因是接口调用的顺序问题。在测试过程中,可能需要先调用添加好友的接口,然后再调用获取所有用户的接口。如果调用顺序不正确,可能导致获取所有用户时没有正确地嵌套好友关系。需要确认测试的调用顺序是否正确。

综上所述,你遇到的问题可能是接口设计问题、数据库查询问题或者接口调用顺序问题导致的。需要仔细检查接口设计和实现的逻辑,确认数据库查询语句和数据是否正确,以及测试的接口调用顺序是否正确。

对于这个问题,我无法直接给出腾讯云相关产品和产品介绍链接地址,因为这个问题与云计算平台无关。但是,腾讯云提供了丰富的云计算服务和解决方案,可以帮助开发者构建和部署各种应用。你可以参考腾讯云的文档和产品介绍,选择适合你的需求的产品和服务。

希望以上回答对你有帮助,如果还有其他问题,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

30分钟精通React今年最劲爆新特性——React Hooks

很多人知道是一个 React 迷,当我听说 React Hooks 出来了,然后官网看了之后,觉得无比激动,每一个 React 一次更新,让人热血澎湃,这也是喜欢 react 原因之一,增加了...看下面的代码示例,withUser函数就是一个高阶组件,返回了一个新组件,这个组件具有了提供获取用户信息功能。...还有一件让很苦恼事情。之前react系列文章当中曾经说过,尽可能把你组件写成无状态组件形式,因为它们更方便复用,可独立测试。...因为每一次我们调用add,result变量都是从初始值0开始。那为什么上面的Example函数每次执行时候,都是拿上一次执行完状态值作为初始值?答案是:是react帮我们记住。...`document.title`这一句 当我们第二个参数传一个空数组[],其实就相当于只首次渲染时候执行。

1.8K20

React Hooks vs React Component

看下面的代码示例, withUser函数就是一个高阶组件,返回了一个新组件,这个组件具有了提供获取用户信息功能。 ?...还有一件让很苦恼事情。之前react系列文章当中曾经说过,尽可能把你组件写成无状态组件形式,因为它们更方便复用,可独立测试。...当用户点击按钮,我们调用setCount函数,这个函数接收参数是修改过新状态值。...不管我们反复调用add函数多少次,结果都是1。因为每一次我们调用add,result变量都是从初始值0开始。那为什么上面的Example函数每次执行时候,都是拿上一次执行完状态值作为初始值?...useEffect怎么解绑一些副作用 这种场景很常见,当我componentDidMount里添加了一个注册,我们得马上componentWillUnmount,也就是组件被注销之前清除掉我们添加注册

3.3K30

如何设计好RESTful API

,没有杂乱动词 URL ,大家理解含义相同 URL 层级 现实哪有这么简单 CRUD,资源相互关联与嵌套很常见,查找 id 是 12 用户所有帖子, 如何设计这个 URL,下面两种设计也会有争论...users,URL 为什么要加版本号呢?...:客户端请求有效,服务器处理发生了意外 503ServiceUnavailable:服务器无法处理请求,一般用于网站维护状态 无状态 过去开发人员通常会将活动用户信息存储服务端 session...一个解决方法就是,回应,给出相关链接,便于下一步操作。这样的话,用户只要记住一个 URL,就可以发现其他 URL。...同时右侧工具栏打开 API,会自动生成 demoData 请求参数,实现快速调用测试: ?

1.6K20

赏心悦目的RESTful API这样来设计!

,没有杂乱动词 URL ,大家理解含义相同 URL 层级 现实哪有这么简单 CRUD,资源相互关联与嵌套很常见,查找 id 是 12 用户所有帖子, 如何设计这个 URL,下面两种设计也会有争论...users,URL 为什么要加版本号呢?...:客户端请求有效,服务器处理发生了意外 503ServiceUnavailable:服务器无法处理请求,一般用于网站维护状态 无状态 过去开发人员通常会将活动用户信息存储服务端 session...一个解决方法就是,回应,给出相关链接,便于下一步操作。这样的话,用户只要记住一个 URL,就可以发现其他 URL。...API,会自动生成 demoData 请求参数,实现快速调用测试: JSON-Viewer JSON-Viewer 是 Chrome 浏览器插件,用于快速解析及格式化 json 内容, Chrome

1.4K10

实现Vue3响应式系统核心-MVP 模型

很明显,以上面的代码来看,我们还做不到这一点,因为 obj是一个普通对象,当我们修改,除了值本身发生变化之外,不会有任何其他反应。 响应式系统基本实现 如何将 obj 变成一个响应式对象呢?...所以 WeakMap经常用于存储那些只有当 key所引用对象存在(没有被回收)才有价值信息,例如上面的场景,如果 target 对象没有任何引用了,说明用户侧不再需要了,这时垃圾回收器会完成回收任务...当我们修改 p.foo 应该能够触发响应,使得副作用函数重新执行才对,但是实际上 effect 并没有执行。这是为什么呢?...代码重构 目前实现,当读取属性值,我们直接在 get 拦截函数里编写把副作用函数收集到“桶”里这部分逻辑,更好做法是将这部分逻辑单独封装到一个 track 函数,函数名字叫 track...当我写单测时候,最好一个功能写一个 case,一组有关联逻辑放在一个测试文件,这样当功能改动时候,需要改动case会最少。

11310

实现Vue3响应式系统核心-MVP 模型

很明显,以上面的代码来看,我们还做不到这一点,因为 obj是一个普通对象,当我们修改,除了值本身发生变化之外,不会有任何其他反应。 响应式系统基本实现 如何将 obj 变成一个响应式对象呢?...所以 WeakMap经常用于存储那些只有当 key所引用对象存在(没有被回收)才有价值信息,例如上面的场景,如果 target 对象没有任何引用了,说明用户侧不再需要了,这时垃圾回收器会完成回收任务...当我们修改 p.foo 应该能够触发响应,使得副作用函数重新执行才对,但是实际上 effect 并没有执行。这是为什么呢?...代码重构 目前实现,当读取属性值,我们直接在 get 拦截函数里编写把副作用函数收集到“桶”里这部分逻辑,更好做法是将这部分逻辑单独封装到一个 track 函数,函数名字叫 track...当我写单测时候,最好一个功能写一个 case,一组有关联逻辑放在一个测试文件,这样当功能改动时候,需要改动case会最少。

11010

【Vue】1979- 实现Vue3响应式系统核心-MVP 模型

很明显,以上面的代码来看,我们还做不到这一点,因为 obj是一个普通对象,当我们修改,除了值本身发生变化之外,不会有任何其他反应。 响应式系统基本实现 如何将 obj 变成一个响应式对象呢?...所以 WeakMap经常用于存储那些只有当 key所引用对象存在(没有被回收)才有价值信息,例如上面的场景,如果 target 对象没有任何引用了,说明用户侧不再需要了,这时垃圾回收器会完成回收任务...当我们修改 p.foo 应该能够触发响应,使得副作用函数重新执行才对,但是实际上 effect 并没有执行。这是为什么呢?...代码重构 目前实现,当读取属性值,我们直接在 get 拦截函数里编写把副作用函数收集到“桶”里这部分逻辑,更好做法是将这部分逻辑单独封装到一个 track 函数,函数名字叫 track...当我写单测时候,最好一个功能写一个 case,一组有关联逻辑放在一个测试文件,这样当功能改动时候,需要改动case会最少。

10710

Python实用脚本实践

本题中,可以先创建好 image 和 document 文件夹,进行后续处理。 2. os 模块 listdir 函数和 for 语句配合,可以完成浏览文件夹中所有文件功能。...假设我们文件夹只有一层,没有嵌套文件夹,那么,利用os模块listdir函数和for循环配合,就可以浏览所有文件。...浏览文件同时,记录下每个文件路径,并存储到list变量,我们就得到了所有文件集合。 2. 利用filecmp模块cmp函数,判断两个文件内容是否一致。...请检查用户名:"+friend) time.sleep(3) # 调用群发函数 send_to_friends(read_csv(CSV_PATH), FRIENDS) 自动拉微信群...bot.messages.remove(msg) 进群退群统计日志 使用 wxpy 文档「看用户是否功能 http://wxpy.readthedocs.io

70820

实现简易 Vue 响应式

处理深层次嵌套 一个对象通常情况下不止一个属性,所以当我们要给每个属性添加响应式时候,就需要遍历这个对象所有属性,给每个 key 调用 defineReactive 进行处理。...// => ~ set: name 复制代码 递归时机 defineReactive 这个方法,如果 value 是对象就进行递归,如果不是对象直接返回,继续执行下面的代码,保证 obj 嵌套属性都进行响应式处理...内部区分了数据是 对象 还是 数组 ,然后执行不同响应式方案。...} 复制代码 升级Compile 第二回合,我们 Compile 类只实现了视图初始化,所以第三回合要把升级一下,支持视图更新。... set 调用 dep.notify() 通知所有的 Watchers 更新视图。

42920

我们未来会怎样构建Web应用程序?

于是每当我获取什么东西,我们都会对其标准化并把放在一个地方(通常是一个存储)。然后,每个组件(使用一个选择器)读取并转换所需数据。...(friend.id);}) 这种机制很快就会变得很麻烦:我们必须记住存储可能受这一更改影响所有位置才行,就好像我们要在大脑里搞一个垃圾收集器,可我们大脑不擅长这种活儿。...他们处理联接方面做得很聪明,并且可以给你一个很好数据视图。你可以用一个 flip 将任何查询转换为订阅。当我第一次尝试将查询转换为订阅,确实感觉这很神奇。...thread-id]] 这个查询将查找当前“会话”活动线程所有消息以及用户信息。不错!一旦你学会了,就会意识到它是一种优雅而出色语言。但我认为这还不够。...市场竞争非常激烈 市场竞争非常激烈,用户变化无常。Slava 为什么 RethinkDB 会失败》描绘了开发工具市场获胜难度有多大。不认为他是错

10K30

【掌握原理】实现简易 Vue 响应式

处理深层次嵌套 一个对象通常情况下不止一个属性,所以当我们要给每个属性添加响应式时候,就需要遍历这个对象所有属性,给每个 key 调用 defineReactive 进行处理。...// => ~ set: name 递归时机 defineReactive 这个方法,如果 value 是对象就进行递归,如果不是对象直接返回,继续执行下面的代码,保证 obj 嵌套属性都进行响应式处理...内部区分了数据是 对象 还是 数组 ,然后执行不同响应式方案。...} 升级Compile 第二回合,我们 Compile 类只实现了视图初始化,所以第三回合要把升级一下,支持视图更新。... set 调用 dep.notify() 通知所有的 Watchers 更新视图。

35420

JSCallback VS Promise

CallBack 和Promise之间区别 两者之间主要区别在于,使用回调方法,我们通常只是将回调传递给一个函数,该函数将在完成调用获取某些结果。...所以,我们为什么需要JSPromise? 为了明白这个问题,我们得先来聊聊为什么大多数JS开发者,仅仅使用CallBack方法是远远不够。...回调地狱 使用回调方法一个常见问题是,当我们最终不得不一次执行多个异步操作,我们很容易以所谓回调地狱告终,这可能会成为噩梦,因为导致难以管理且难读取。换句话说,这是每个开发者噩梦。...方法就是Promise.all Promise.all能够在所有操作成功结束,搜集操作结构。...如果在所有结果完成之前发生拒绝,那么未完成结果将被终止,并且永远无法完成。换句话说,它是全有或全无调用之一。

5.1K21

TIMSDK 常见问题

为什么另一端收到此表情消息并解析出文本或超出预期情况?...暂不支持,setReadMessage() 是根据参数传入该条消息时间戳之前所有消息置为已读状态,填 NULL 将该会话所有消息置为已读状态 23.获取进群前历史消息记录吗?...不是好友 TIM_FRIEND_RELATION_TYPE_MY_UNI 对方好友列表 TIM_FRIEND_RELATION_TYPE_OTHER_UNI 在对方好友列表 TIM_FRIEND_RELATION_TYPE_BOTH_WAY...创建一个用户帐号有三种方式: 1) 通过 "控制台->开发者辅助工具" 填写 identifier,密钥来生成一个用户帐号,由于方法不可批量,建议测试环境下使用此方法,如果需要测试 rest api,...SDK 提供了自定义数据目录接口,只需初始化 SDK 传入相对路径或绝对路径,SDK 会自动创建对应文件夹目录作为用户数据目录。

5.6K102

从头为 Vue.js 3 实现 Vuex

这意味着如果用户 action 没返回一个 Promise,或调用了某些类似 axios.get 东西,我们也需要为用户返回一个 Promise。 我们可以编写如下测试。...当我们运行测试,第一条断言 expect(store.getters['triple']).toBe(15) 通过了,因为返回了 .value;同时也丢失了反应性 -- store.getters[...结合 module 嵌套 state 为了完全兼容真实 Vuex,需要实现 module。鉴于文章长度,不会在这里完整实现。...如果该模块又包含 modules,则再次调用 registerState,并传入上一层模块 state。这让我们可以任意嵌套多层。到达底层模块,就直接返回 state。...我会在之后文章实现它们。 升级 constructor 以使用 registerState 方法,所有测试再次通过了

1.3K20

使用Neo4j和Java进行大数据分析 第1部分

这对社交软件特别有用,每次与某人联系,你们之间就会建立关系。可能在你上次求职,你选择了一些你感兴趣公司,然后搜索你社交网络以获取与他们联系。...为了向你展示为什么图形数据库正成为关系数据库日益流行替代方案,将在接下来几个示例中使用它们工作。...建模复杂关系:Neo4j与MySQL 从计算机科学角度来看,当我们考虑社交网络建模用户之间关系,我们可能会绘制如图1所示图形。 ? ?...从本书第一章Neo4j in Action中提取了本节所有测试。...该字段输入以下Cypher查询(以我家人为例,如果您愿意,可以随意更改细节以建模您自己家庭): CREATE (person:Person {name: "Steven", age: 45}

3.3K20

Vue路由

性能好,用户体验好 最大原因就是:页面按需更新 路由基本使用 定义&作用: 修改地址栏路径,切换显示匹配组件 基本使用 固定5个固定步骤(不用死背,熟能生巧) 下载 VueRouter 模块到当前工程...$mount('#app') 当我们配置完以上5步之后 就可以看到浏览器地址栏路由 变成了 /#/形式。...获取:$route.params.参数名 注意:动态路由也可以传多个参数,一般只传一个 路由重定向 / 路由404 / 路由模式 路由重定向 网页打开, url 默认是 / 路径,未匹配到组件...实现首页内容显示 这里我们实现是首页基础内容渲染 Article.vue ,实现显示页面的所有内容 ...优点: 组件切换过程把切换出去组件保留在内存,防止重复渲染DOM, 减少加载时间及性能消耗,提高用户体验性。

21121

怎么给测试代码做抽象才是有意义

然而,慢慢地会发现:过度封装会致使你测试用例变得越来越难读。 那到底测试代码,怎样封装才是好封装呢?...为了能让你理解这里说 “用 ANA 写测试是不好”,这里给你一个经典样例,你来维护好代码库和测试用例。可能你现在会觉得这些测试用例也能保障代码质量,也还好。不过这样用例真的没问题么?...还有,为什么要在第一个用例里 blogPostController.loadBlogPosts(req, res, next) 调用 res.json 里要返回 Post,而第二个用例却没有返回呢?...只需要知道:当想把所有东西都要弄成 DRY 时候,测试就会变得非常难以维护了,比如: 一个新人刚到新团队 他被叫去加个测试用例 复制以前测试代码,然后测试工具函数中加了一行 if 语句来通过测试...Review 的人一看:测试通过了,代码应该没问题就 Approve 了 PR 合并 DRY 测试见得很多另一种情况就是:滥用 describe 和 it 嵌套以及 beforeEach。

70020

Vue之Router(三)

user 页面调用该方法。...} 可以看到,尽管我们没有 user 页面定义test 方法,但是却依旧可以调用,因为所有的组件都是继承 Vue 原型。...$router 原因,因为所有的组件都是继承 Vue 原型,Vue原型用属性,组件也可以使用。   综上所述。...home 页面被激活时候获取当前激活状态下路径;   最后使用 beforeRouteLeave 导航守卫,记录用户离开页面路径,并将该路径赋值给变量path,这样当用户再次进入到该页面,就会使用离开后路径...二、产生原因   我们知道,所有的子组件最终都会通过 router-view 渲染当我们将 keep-alive 包裹住 router-view ,就意味着所有的组件都被缓存了。

47810

Hooks:尽享React特性 ,重塑开发体验

Hooks 使用规则(调用位置有限制) ✅ 函数组件顶层调用 Hooks ✅ React 函数组件或自定义Hooks调用 Hook 下述以 useState(React 内置钩子) 为例...这样可以做到各个 Hook 每一次渲染调用顺序是一致。 const [count, setCount] = useState(0); 数组结构语法允许我们为状态变量赋予不同名称。...不需要获取 “previous Id”,因为 clean up 函数将在闭包捕获。 ➰或者可以将以前 state 或 props 存储。...你可以在其中保存任何值,最常用于保存 DOM 节点。 使用 useImperativeHandle 自定义从组件暴露 ref,但是很少使用。...将必须同步阻塞更新(比如使用输入法输入内容)与不需要阻塞用户界面的非阻塞更新(比如更新图表)分离以提高性能: useTransition 允许将状态转换标记为非阻塞,并允许其他更新中断

4700
领券