首页 > 其他分享 >Vue中axios请求后res返回204,no content,res.data为undefind

Vue中axios请求后res返回204,no content,res.data为undefind

时间:2023-04-07 09:57:23浏览次数:49  
标签:axios console log err res resolve let result 204

一直以为后台只要返回200-299之间的状态码就没问题,就是这个错误认知,花了三个小时终于想到解决办法

附上axios  地址  axios中文文档|axios中文网 | axios (axios-js.com)

前面一直想着后台能接收处理请求,肯定不是后台问题,一直花时间配置前端请求指令,以及设置响应拦截器查看情况。突然想到其实是自己在后台设置了响应状态码就是204

router.get('/getGoods', async (ctx, next) => {     try {         let SearchLoststatus = 11;         let SearchLoststatusMessage = ''         let SearchFoundstatus = 11;         let SearchFoundstatusMessage = ''         let LostMessage = {}         //wu_dehong.`lost_list`         let FoundMessage = {}         //wu_dehong.`found_list`         await new Promise((resolve, reject) => {             pool.query('select * from wu_dehong.`lost_list` where isdelete=0;', (err, result) => {                 if (err) {                     SearchLoststatus = 500;                     SearchLoststatusMessage = '数据库查询 失物 信息失败'                     console.log('数据库查询失物信息失败')                     reject()                     return                 }
                if (result.length == 0) {//错误演示,改为100,成功运行返回响应体                     SearchLoststatus = 200;                     SearchLoststatusMessage = '数据库中未删除的失物信息为空'                     console.log('数据库中未删除的失物信息为空')
                } else {//错误演示,改为100,成功运行返回响应体                     SearchLoststatus = 201;                     SearchLoststatusMessage = '查询未删除的失物信息  成 功'                     // console.log(result)
                    LostMessage = { ...result }
                }                 resolve()             })         })         /* await new Promise((resolve, reject) => {             if (Object.getOwnPropertyNames(LostMessage).length == 0) {                 reject()                 return             }             resolve()             for (let key in LostMessage) {                 fs.readFileSync(`${LostMessage[key].img}`, 'utf8', function (err, result) {                     if (err) {                         return console.log('读取失物图片信息失败!', err)                     }                     if (result) {                         LostMessage[key].img = result                     }                 })             }
        }) */
        await new Promise((resolve, reject) => {             pool.query('SELECT * FROM wu_dehong.found_list where isdelete=0;', (err, result) => {                 if (err) {//错误演示,改为100,成功运行返回响应体                     SearchFoundstatus = 0;                     SearchFoundstatusMessage = '数据库查询 招领 信息失败'                     console.log('数据库查询 招领 信息失败')                     reject()                     return                 }
                if (result.length == 0) {                     SearchFoundstatus = 1                     SearchFoundstatusMessage = '数据库中未删除的招领信息为空'                     console.log('数据库中未删除的招领信息为空')                 } else {//错误演示,改为100,成功运行返回响应体                     SearchFoundstatus = 3                     SearchFoundstatusMessage = '查询未删除的招领信息  成 功'                     // console.log(result)                     FoundMessage = { ...result }                 }                 resolve()             })         })         /* await new Promise((resolve, reject) => {             if (Object.getOwnPropertyNames(FoundMessage).length == 0) {                 reject()                 return             }             resolve()             for (let key in FoundMessage) {                 fs.readFileSync(`${FoundMessage[key].img}`, 'utf8', function (err, result) {                     if (err) {                         return console.log('读取招领图片信息失败', err)                     }                     if (result) {                         FoundMessage[key].img = result                     }                 })             }
        }) */ //我说为什么总是返回204,res.data为undefind,排查下来原来是自己挖坑
        ctx.response.status = SearchLoststatus + SearchFoundstatus         ctx.response.statusMessage = SearchLoststatusMessage + '————' + SearchFoundstatusMessage
        ctx.response.body = {             LostMessage,             FoundMessage         }         console.log(ctx.response.body)         // Object.getOwnPropertyNames(obj).length==0
    } catch (error) {         console.log(error, '初始化搜索物品信息GET请求失败')     } })

标签:axios,console,log,err,res,resolve,let,result,204
From: https://www.cnblogs.com/zibai/p/17295005.html

相关文章

  • SwipeRefreshLayout和ListView的EmptyView共存冲突的问题
    SwipeRefreshLayout是android官方的下拉刷新控件;它内部有且只能有一个子控件;当一个ListView嵌入到它内部时,就不能为ListView带一个EmptyView了;于是很自然的想到将ListView和EmptyView纳入到一个父控件中;典型的像下面这样的布局:<android.support.v4.......
  • 16_Privacy_preserving_data_aggregation_scheme_for_mobile_edge_computing_assisted
    ......
  • LoadMoreListView+SwipeRefreshLayout(分页下拉)基本结构
    一切为了快速迭代importjava.util.ArrayList;importorg.json.JSONObject;importandroid.animation.ObjectAnimator;importandroid.os.Bundle;importandroid.support.v4.widget.SwipeRefreshLayout;importandroid.util.Log;importandroid.vie......
  • goodFeaturesToTrack
    一、goodFeaturesToTrack1、过程:1)函数查找图像中或指定图像区域中最突出的角点(1)函数使用cornerMinEigenVal或cornerHarris计算每个源图像像素的角点质量度量。(2)函数执行非最大值抑制(保留3x3邻域中的局部最大值)。(3)最小特征值小于qualityLevel*maxx,yqualityMeasureMap(x,y)......
  • 50、K8S-自定义资源定义-CustomResourceDefinition
    Kubernetes学习目录1、基础知识1.1、回顾到目前位置,我们为了在k8s上能够正常的运行我们所需要的服务,需要遵循以下方式来创建相关资源:1、合理的分析业务需求。2、梳理业务需求的相关功能。3、定制不同功能的资源配置文件。4、应用资源配置文件,完善业务环境。1.2、需求......
  • ENGG1310 P3.2 Resistor, Inductor, Capacitor, and RLC Circuits
    这一节里关于三相电的内容最为重要,注意复习Resistor电阻Physical2-terminalenergy-dissipativedevice.电阻定律电阻同样与温度\(T\)有关(然而Temperatureisneglectedforthetimebeing),一般来说温度越高,电阻越大电阻的伏安性质电阻的\(R\)功率损失(PowerL......
  • ResponseResult
    `packagecom.hikvision.test.ssodemo.common;importcom.fasterxml.jackson.annotation.JsonInclude;importjava.io.Serializable;/**@[email protected]@since2022/10/13*/@JsonInclude(JsonInclude.Include.NON_NULL)publicclassResponseRe......
  • 【wordpress】wordpress插件之自动采集发布工具
    前言安装好wordpress后,就要开始发布文章,由于之前的文章分散在各个平台,想要一个个拷贝过去,的确费时费力,所以想要一劳永逸的解决这个问题,就要用到今天介绍的这个采集工具插件安装搜索:FatRatCoolect然后点击现在安装如果因为网速慢下载不下来,可以直接到官网下载然后上传:cd/wp-con......
  • 【Linux】wordpress后台设置
    文章目录一.个人资料1.点击右上角的个人名称:选中编辑我的个人资料2.按下图进行修改二.设置--常规选项三.文章分类一.个人资料1.点击右上角的个人名称:选中编辑我的个人资料2.按下图进行修改二.设置–常规选项三.文章分类登陆后台-文章-分类目录Linux基础,web应用,中间件,数......
  • C#-DevExpress改变表格行颜色
    改变行颜色通过行样式进行设置,这里使用了一个转换器,可以根据表格单元格数据满足不同条件时,将行的背景色设置为不同的颜色,参考部分代码如下:xmlns:dxg:"http://schemas.devexpress.com/winfx/2008/xaml/grid"<dxg:TableView><dxg:TableView.RowStyle><StyleTarget......