输入无登录的超链接,然后重定向到登录后使用DateTime(小时和分钟)返回



我想重定向到包含DateTime(包括小时和分钟(的returnurl。该日期时间是过滤和显示最新项目的参数。尽管如果我已经登录直接输入localhost:59889/Home/Index/?parameterName=yyyy/mm/dd HH:MM AM时,这没有问题。但是,如果我在登录之前转到此链接,然后输入我的用户名和密码,则会出现错误的格式错误。调试后,代码停止在redirectfromloginpage((。

我正在开发电子邮件发送者应用程序。该电子邮件包含指向ASP.NET MVC撰写的网站的超链接。因为用户在电子邮件中单击超链接时尚未登录,所以我希望他们直接进入我的超链接中的网页(带有datetime参数(。

HomeController:Controller

[HTTPPOST]
ActionResult Index(params){
...
RedirectFromLoginPage()
...
//get the items after a certain time, using EF framework Lambda expression
...
return null
}

经过反复试验后,我发现它不是空格的编码问题,因为Sat, 05 Nov 2019格式可以工作。如果我将HH:MM(小时和分钟(添加到returnUrl,它将始终给我一个错误。

例如,当returnUrl为 localhost:59889/Home/Index?date=06/09/2018 11:00 AM时,如果我想从登录页面重定向到目标链接,则无效。但是,如果我已经登录,然后输入上述参数,它确实可以。

现在,任何人都可以告诉我如何在日期参数中添加一个小时和分钟,将它们放到returnUrl中,以便我输入链接然后登录,它可以在没有错误的情况下转到正确的地址?

问题可能是您在URL中包含:字符。

尝试序列化为更友好的格式,例如UTC时间戳整数或编码字符串的URL。

最新更新