我有一个API函数,可以验证用户的电子邮件,但我真的不知道下一步该怎么做。我想将用户重定向到显示“您的电子邮件已通过验证”的HTML页面,但是我不知道应该使用res.sendFile()
还是res.redirect()
。
我尝试了这两种方法,但是当包含图像时res.sendFile
不起作用,因为如果API为/user/verifyEmail
,则由于某种原因,我包含在HTML中的任何图像都具有src=/user/myimg
,并且因此,它们不会发送或散布。然后,我尝试将HTML页面放置在我的应用程序静态文件中,并且res.redirect()
可以正常工作(也适用于图像),但是感觉很不对劲,因为如果从文件开始访问myapp/verification.html
,任何人都可以打开此页面在静态文件夹中。
这里正确的做法是什么?
答案 0 :(得分:0)
您可以通过添加用于保护路由的中间件来解决此问题
但是这只是感觉不对,因为任何人都可以在访问myapp / verification.html时打开此页面,因为该文件位于静态文件夹中。
最后,res.redirect()
是正确的选择。
答案 1 :(得分:0)
您必须在
之类的路径中设置唯一值www.xyz.com/verification/unique_value
unique_value定义哪个用户验证此页面(您可以编码用户ID并将其设置为unique_value)
然后您可以将GET api用于www.xyz.com/verification/unique_value此路径
您可以在api nad中解码是否是用户,然后可以显示page(res.render())或重定向到主页(res.redirect())