回调返回响应,但当在API中发送时,响应在节点JS中显示为空白

Callback return the response but when send in API response shows Blank in node JS

本文关键字:响应 节点 JS 显示 空白 返回 API 回调      更新时间:2024-01-12

我必须使用REST API发送响应。回调返回确切的响应,但当我将其传递到API响应时,它显示为空白。

这是代码:

getAuctionListingByType(filterData, function(response) {
  console.log('auction listing');
  console.log(response);
  res.json({
    code: 200,
    message: 'Auction',
    data: response
  });
});

控制台显示以下响应:

 [[auction_id: '3',title: 'Salvage Auction 2011',business: 'Insurance'],
 [auction_id: '4',title: 'Salvage Auction 2013',business: 'Bank']]

但当我点击API时,得到的回应是:

{"code":200,"message":"Auction","data":[[],[]]}

当我控制台响应时,它会打印出来,但当我传递给客户端时,它是空白的。

您正在从服务器发送array of arrays,但您的array无效。

数组是类似列表的对象,其原型具有执行遍历和突变操作的方法

您将object视为array

响应应该看起来像:

[{auction_id: '3',title: 'Salvage Auction 2011',business: 'Insurance'},{auction_id: '4',title: 'Salvage Auction 2013',business: 'Bank'}];

注意:检查控制台(cmd)是否有错误,您可能会看到Unexpected token :

您的响应应该是对象数组格式,而不是数组格式。

你的回复应该是这样的:

[{auction_id: '3',title: 'Salvage Auction 2011',business: 'Insurance'},{auction_id: '4',title: 'Salvage Auction 2013',business: 'Bank'}]

将响应的格式更改为对象数组。

将响应存储在一个变量中,并在api中传递该变量。

       getAuctionListingByType(filterData, function(response) {
              console.log('auction listing');
              console.log(response);
              var TempStore=response;
             res.json({
                   code: 200,
                   message: 'Auction',
                  data: TempStore
                  });
             });