微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何通过发布请求循环值?

如何解决如何通过发布请求循环值?

你好,我正在使用 Javascript,我想通过 post 请求循环值,所以这是我目前代码的一部分

  var pid = 'B2411A07C-Q110036000'
  var body = `[{\"id\":\"e7f9dfd05f6b992d05ec8d79803ce6a6bcfb0a10972d4d9731c6b94f6ec75033\",\"variables\":{\"addToCartInput\":{\"productId\":\"",\"clientMutationId\":\"addToCartMutation\"}}}]`;
  body = JSON.parse(body);
  body[0].variables.addToCartInput.productId = pid;
  body = JSON.stringify(body)
const fetchit = await fetch(`https://www.site.de/add-to-cart/`,{
                method: 'POST',body: body,

所以对于单个 pid 它可以工作,但我希望它可以使用更多的 pid,这样它们就可以用 ',' 分割,然后通过请求的主体循环每个值,如

var pid = 'B2411A07C-Q110036000','B2411A07C-Q110036010','B2411A07C-Q110036020'

我该怎么做? 我尝试了很多东西,但遗憾的是没有任何效果

解决方法

您可以使用简单的 map()

let pid = ['B2411A07C-Q110036000','B2411A07C-Q110036010','B2411A07C-Q110036020']
let body = `[{\"id\":\"e7f9dfd05f6b992d05ec8d79803ce6a6bcfb0a10972d4d9731c6b94f6ec75033\",\"variables\":{\"addToCartInput\":{\"productId\":\"",\"clientMutationId\":\"addToCartMutation\"}}},{\"id\":\"e7f9dfd05f6b992d05ec8d79803ce6a6bcfb0a10972d4d9731c6b94f6ec75033\",\"clientMutationId\":\"addToCartMutation\"}}}]`;
body = JSON.parse(body);
body = body.map((b,i) => {
  if (pid.length >= i) b.variables.addToCartInput.productId = pid[i];
  return b;
})
//body[0].variables.addToCartInput.productId = pid;
console.log(body)
body = JSON.stringify(body)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。