Javascript 多个获取承诺-相同的url,不同的正文

Javascript 多个获取承诺-相同的url,不同的正文,javascript,fetch,es6-promise,Javascript,Fetch,Es6 Promise,尝试将多个fetch承诺发送到同一URL,但每次调用的主体不同。目前我正在把它们全部写出来。我该如何以一种不那么冗长的方式来写这篇文章呢 Promise.all([ 取回(“https://cors-anywhere.herokuapp.com/https://api.myurl.com/verify", { 正文:`link=${productVariant1}&license\u key=${licenseKey}`, 标题:{ “内容类型”:“应用程序/x-www-form-urlenco

尝试将多个
fetch
承诺发送到同一URL,但每次调用的主体不同。目前我正在把它们全部写出来。我该如何以一种不那么冗长的方式来写这篇文章呢

Promise.all([
取回(“https://cors-anywhere.herokuapp.com/https://api.myurl.com/verify", {
正文:`link=${productVariant1}&license\u key=${licenseKey}`,
标题:{
“内容类型”:“应用程序/x-www-form-urlencoded”
},
方法:“员额”
}).然后(做点什么),
取回(“https://cors-anywhere.herokuapp.com/https://api.myurl.com/verify", {
正文:`link=${productVariant2}&license\u key=${licenseKey}`,
标题:{
“内容类型”:“应用程序/x-www-form-urlencoded”
},
方法:“员额”
}).然后(做点什么),
])。然后(数据=>{
/*过程响应*/
}

总共有5个承诺,只有调用的
productVariant
部分不同。

确定您可以使用map:

Promise.all([productVariant1, productVariant2].map((productVariant, i) => {
return fetch("https://cors-anywhere.herokuapp.com/https://api.myurl.com/verify", {
          body: `link=${productVariant}&license_key=${licenseKey}`,
          headers: {
            "Content-Type": "application/x-www-form-urlencoded"
          },
          method: "POST"
        }).then(data => console.log(`Promise ${i} done`))
})
).then(data => {
console.log("all promises done")
})

您可以创建一个函数:


函数获取(正文){
返回取回(“https://cors-anywhere.herokuapp.com/https://api.myurl.com/verify", {
身体,
标题:{
“内容类型”:“应用程序/x-www-form-urlencoded”
},
方法:“员额”
}).然后(做某事)
}
//然后
我保证([
Fetch(`link=${productVariant2}&license\u key=${licenseKey}`),
获取(`link=${productVariant2}&license\u key=${licenseKey}`)
])。然后(回答=>{
//对回应做点什么
})

或者,如果您正在更改的是唯一的,而问题/问题是?问题是我应该如何以不太冗长的方式编写它?添加一个带有
url
body
参数的帮助函数,并每次调用,我认为解决这个问题的最佳方法是使您的api健壮,并让它一次支持多个参数或者使用
body:link=${productVariant1},${productVariant2}
等进行单个调用,api可以相应地读取它。