Javascript 从响应中检索请求中使用的变量

Javascript 从响应中检索请求中使用的变量,javascript,node.js,request,response,Javascript,Node.js,Request,Response,我正在开发一个函数,该函数根据许多ID发出一定数量的请求。然后它选择结果元素的id 我想在响应中传播我用于请求的id。类似这样的内容:(仅作说明) const fetchSomeIds=async(ids,Service)=>{ const requests=ids.map(id=>{return{url:`/something/`+id+`/something else`}); const responses=wait Promise.all(requests.map( request=>Se

我正在开发一个函数,该函数根据许多ID发出一定数量的请求。然后它选择结果元素的id

我想在响应中传播我用于请求的id。类似这样的内容:(仅作说明)

const fetchSomeIds=async(ids,Service)=>{
const requests=ids.map(id=>{return{url:`/something/`+id+`/something else`});
const responses=wait Promise.all(requests.map(
request=>Service.get(request.url)
));
const someIds=responses.map(元素=>{return{id:id/*(用于请求)*/,some_id:element.data.some_id};});
返回小体;
};
所以如果我使用ids=[27,54],我会得到一些id=133和一些id=32。响应应如下所示:

[
{ 
“id”:27,
“某个id”:133
},
{
“id”:54,
“some_id”:32
}
]
因为,您可以使用相同的索引访问原始数组:

const someIds = responses.map((element, index) => {
   return {id: ids[index], some_id: element.data.some_id};
});
但是,将所有处理放在一个
map
回调中可能更简单:

function fetchSomeIds(ids, Service) {
    return Promise.all(ids.map(async id => {
        const request = {url: `/something/` + id + `/something-else`};
        const response = await Service.get(request.url);
        const element = response;
        return {id, some_id: element.data.some_id};
    }));
}