【问题标题】:Pass multiple array values as a url variable in JavaScript在 JavaScript 中将多个数组值作为 url 变量传递
【发布时间】:2021-06-01 04:27:12
【问题描述】:

我有 3 个数组要传递给 URL 的变量。我想知道如何将它们传递给 URL。

export default function () {
    let p_code = ['P', 'Y', 'M', 'C'];
  let c_flg = ['O', 'C', 'B'];
  let page = ['H', 'F', 'W'];
    let res = "";

    for (var i = 0; i < p_code.length; i++) {
        res = http.post('https://myabcdomain.com/pass/mark/myhope.jsp?p_code='+p_code[i]+'&set_id=999&crncy_code=NGN&cls_opn_flg='+c_flg[i]+'&high_tran_date_ui='+encodeURIComponent('2021-01-04T05')+'&page_size='+page[i], {
      tags: { name: 'UISheetPrint' },
    });
      // console.log(accountNumbers[i]);
  }
}

【问题讨论】:

  • a) 您对接收方有任何控制权吗?因此客户端和服务器都可以就格式达成一致。 b) 如果您已经在使用 post,您是否考虑过在正文中传递这个?
  • 这能回答你的问题吗? How to pass an array as a URL parameter?
  • @Renat,谢谢。这只是一个参数。我需要传递给 3 个变量
  • @malarres,不。我正在运行负载测试,我只能通过 URL 链接访问服务器

标签: javascript arrays loops variables


【解决方案1】:

详细说明@Renat 评论,并关注https://stackoverflow.com/a/40493291/2729605,您可以这样做:

  let p_code = ['P', 'Y', 'M', 'C'];
  let c_flg = ['O', 'C', 'B'];
  let page = ['H', 'F', 'W'];
  let res = "";
  let p_codeStr = encodeURIComponent(JSON.stringify(p_code));
  let c_flgStr  = encodeURIComponent(JSON.stringify(c_flg));
  let pageStr  = encodeURIComponent(JSON.stringify(page));

  let reqStr = `https://myabcdomain.com/pass/mark/myhope.jsp?p_code=${p_codeStr}&set_id=999&crncy_code=NGN&cls_opn_flg=${c_flgStr}&high_tran_date_ui=${encodeURIComponent('2021-01-04T05')}&page_size=${pageStr}`

console.log(reqStr)


// res = http.post(reqStr, {
//      tags: { name: 'UISheetPrint' },
//    });

(取消评论)

【讨论】:

    猜你喜欢
    • 2011-03-29
    • 2012-04-14
    • 1970-01-01
    • 1970-01-01
    • 2019-06-10
    • 2021-11-12
    • 2022-01-06
    • 1970-01-01
    • 2021-07-28
    相关资源
    最近更新 更多