为什么我的Chrome开发工具显示

未能显示响应数据

在响应时,返回的内容类型是文本/html?

在开发人员工具中查看返回的响应的替代方法是什么?


当前回答

只要响应的主体没有在你的代码中被消耗(例如使用.json()或.text()),它就不会显示在Chrome开发工具的预览选项卡中

其他回答

对我来说,当返回的JSON文件太大时就会出现问题。

如果你只是想看响应,你可以在Postman的帮助下得到它。请看下面的步骤:

复制所有信息的请求(包括URL,头,令牌等)从chrome调试器通过chrome开发工具->网络选项卡->找到请求->右键单击它->复制->复制为cURL。 打开邮差,导入->Rawtext,粘贴内容。Postman将重新创建相同的请求。然后运行请求,您应该会看到JSON响应。 [在postmain中导入cURL][1]: https://i.stack.imgur.com/dL9Qo.png

如果想要减小API响应的大小,也许可以在响应中返回更少的字段。对于mongoose,您可以通过在调用find()方法时提供字段名称列表轻松实现这一点。 例如,将方法从:

const users = await User.find().lean();

To:

const users = await User.find({}, '_id username email role timecreated').lean();

在我的例子中,有一个名为description的字段,它是一个大字符串。从字段列表中删除它后,响应大小从6.6 MB减少到404 KB。

对于在请求大型JSON数据时收到此错误的人,正如Blauhirn所提到的,如果您使用身份验证头等,则不能在新选项卡中打开请求。

幸运的是chrome确实有其他选项,如复制->复制为卷曲。 从commandoline通过cURL运行这个调用将是原始调用的精确复制。

我添加了> ~/result。Json到最后一部分,将结果保存到一个文件中。 否则它将被输出到控制台。

Bug仍然活跃。 这发生在JS成为新页面(200)或重定向(301/302)的启动器时 一种可能的方法来修复它-它禁用JavaScript请求。 例如,在puppeteer中,你可以在拦截请求(page.on('request'))时使用:page.setJavaScriptEnabled(false)

只要响应的主体没有在你的代码中被消耗(例如使用.json()或.text()),它就不会显示在Chrome开发工具的预览选项卡中

另一种可能是服务器不处理OPTIONS请求。