盖茨比:从电子邮件链接中消失 url 参数



我正在开发一个盖茨比的网站。用户会收到一封电子邮件,其中包含包含一次性令牌的链接,如下所示:

https://www.example.com/approval?token=hIPdI7oSw6KV6k8ttsXG3XAHmIqExyB01YkChxiLR9leksJ67iRme6yyxfBztz3Z

这应该将它们带到approval页面并提供token作为参数。

它在开发版本中工作正常,但在生产版本中,url 中缺少参数,用户只是被定向到 https://www.example.com/approval

有谁知道为什么 Gatsby 可能会在生产版本中重写没有参数的 url,有没有办法防止这种情况发生?

编辑:此站点托管在CloudFront上,并且我们启用了查询参数的转发。可能在另一个层面上发生了一些重定向?

原来是盖茨比/CloudFront的疯狂:https://github.com/gatsbyjs/gatsby/issues/20139

盖茨比开发服务器无助地在?前面注入了一个/。CloudFront 上的生产版本没有这样做,从而触发了重定向。CloudFront 需要格式为/?的查询字符串 - 以供将来参考!

最新更新