【问题标题】:Appending to multiple ids to api call将多个 id 附加到 api 调用
【发布时间】:2020-07-28 17:35:19
【问题描述】:

所以我可以调用一个 api,它允许我使用此端点切换用户是否具有 vip 角色。

ApiService.patch('/admin/vip?user_id=1&user_id=2')

它可以通过在问号后附加“user_id=:id”并在每个用户 id 之间添加“&”来一次定位多个用户。如何创建某种变量,使用循环来获取正确的用户 ID,并在其实际 ID 之前应用“user_id =”并在每个用户之间应用“&”?

我可以处理循环以获取 ID,但不确定如何在每个 ID 之前放置“user_id=”,在每个 ID 之后放置“&(仅当在最后一个)

【问题讨论】:

  • arrayOfUserIds.map(id => `user_id=${id}`).join('&')
  • 你应该这样回答

标签: javascript api loops append frontend


【解决方案1】:

我想说实现这一点的最简单方法是为user_id 设置一个逗号分隔值。然后,您可以在代码中执行query.user_id.split(',') 之类的操作,并获取您传入的所有用户 ID 的数组。

【讨论】:

  • 你能举个例子吗?在我的情况下查询将是未定义的
  • 我必须澄清,这只有在您有权修改 API 端点时才有效。如果没有,我会说 Taplar 的解决方案可能会奏效。但是,实际上,我觉得 API 有点坏了,因为它多次使用相同的查询参数,这真的不应该发生。大多数 Web 框架都会解析查询参数,而且这些参数是独一无二的。
  • 这里有更多关于这个的讨论:stackoverflow.com/questions/1835074/…
【解决方案2】:

使用数组存储 ids,然后映射数组以创建字符串,使用条件跳过第一个。或者使用URL Search Params

【讨论】:

    猜你喜欢
    • 2021-05-12
    • 2019-01-31
    • 2016-03-26
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    • 2014-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多