在 JavaScript 中将多个数组值作为 url 变量传递
Posted
技术标签:
【中文标题】在 JavaScript 中将多个数组值作为 url 变量传递【英文标题】:Pass multiple array values as a url variable in JavaScript 【发布时间】: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 链接访问服务器 【参考方案1】:详细说明@Renat 评论,并关注https://***.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' ,
// );
(取消评论)
【讨论】:
以上是关于在 JavaScript 中将多个数组值作为 url 变量传递的主要内容,如果未能解决你的问题,请参考以下文章
在 Javascript 中将多个 Promise 推入数组时处理单个错误
在Javascript中将对象转换为包含多个对象的数组的理想方法是啥? (允许 ES6)