您好,
我们使用 discourse 来维护论坛,并且有一个自动化工具会发出类似以下的请求:
agent.get(`${this.baseUrl}/admin/users/list/all.json?email=${emailAddress}`)
我最近发现一个问题,其中一个电子邮件地址包含一个 % 字符。我认为该请求失败是因为字符未编码。
我考虑过在电子邮件字符串上使用 encodeURI,但担心 discourse 在查询匹配的电子邮件之前可能不会执行解码,从而可能导致误报。
我查看了 github 源代码,但我对 ruby 或该存储库不够熟悉,无法确定。
在将电子邮件地址传递给 admin/users/list/all 路由时,使用 encodeURI 是否安全?Discourse 在执行查询之前会解码参数吗?