我正在尝试以下列格式(基本上删除所有查询字符串参数)将规范链接添加到我的母版页的头部:
<link rel="canonical" href="http://www.domain.com/friendly-url/" />
假设有人通过以下 URL 访问了页面,我如何从 url 中删除查询字符串以便创建上面的规范链接?
http://www.domain.com/friendly-url/?source=google
我试过使用 Request.RawUrl 但这会返回查询字符串以及友好的 url。规范链接的全部意义在于显示我们要索引的页面的首选版本,在我们的例子中,这是 URL 减去查询字符串中的任何内容。友好的 URL 使这个变得复杂,因为我认为它限制了我使用 Request.RawUrl,除非有人能告诉我不同的方法?
最佳答案
获取您的 Uri
类并从中删除查询字符串:
Uri uri = HttpContext.Request.Url;
string friendlyUrl = uri.OriginalString.Remove(uri.OriginalString.IndexOf(uri.Query));
关于c# - 如何获取规范链接 href 的 RawUrl 减去 QueryString?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19842597/