我有一个 webform 应用程序,当您登录时,它会将我带到我的 MVC 应用程序的主页。在登录过程中,我正在形成一个将我带到我的 MVC 应用程序的 url。在这个 URL 中,我附上了一个加密的用户 ID。问题是这个加密的用户 ID 包含特殊字符,例如“+”或“/”。它搞砸了,把我带到了一个 404 页面。如果没有特殊字符,那么它可以正常工作并将我带到正确的页面。
这就是我形成 URL 的方式
Response.Redirect("http://mysite/UserRedirect/" + encryptedUserId)
MVC方法
[HttpGet]
public ActionResult UserRedirect(string id = "")
{
//Decrypts UserID, then takes you to the homepage
return("Index");
}
如果 encryptedUserId 包含像下面的示例这样的特殊字符,它就会搞砸。
7hnQ+Nc= -> http://mysite/UserRedirect/7hnQ+Nc= ("+" sign)
或者
E/VDb7l= -> http://mysite/UserRedirect/E/VDb71 ("/" sign)
否则,如果没有像下面这样的特殊字符,那么它可以正常工作
NIatmgg= -> http://mysite/UserRedirect/NIatmgg=
在服务器上部署应用程序时会出现此问题。我应该如何处理这个?
当有一个“/”时,它甚至没有进入我的 UserRedirect 方法。谢谢