[英]How to get current request url in Sharepoint 2013 in C#?
如何獲取當前請求的URL
我輸入瀏覽器:
http://srv-1/sites/1001/Account Documents/Order
但在我的控件的Page_Load中,我得到了
HttpContext.Current.Request.Url = http://srv-1/_layouts/15/start.aspx
和
Page.Request.RawUrl = Page.Request.RawUrl
我需要檢索信息: /Account Documents/Order
這是因為最小下載策略功能。 您的網址由SharePoint重寫。
最簡單的解決方案是禁用此功能,但您也可以嘗試通過SPUtility.OriginalServerRelativeRequestUrl屬性獲取URL或重構您的代碼不使用url,但使用當前庫或其他內容。
如果您嘗試使用該頁面,則SharePoint會自行重寫URL
解決方案是在[SPUtility類 - SPUtility.OriginalServerRelativeRequestUrl] [1]上使用特殊屬性
http://blog.voyta.net/2012/07/09/how-to-get-original-request-url-in-sharepoint/
此屬性在重寫之前返回原始URL,如果您需要從中加載應用程序頁面的子網站,這將非常有用。
由於此URL與服務器相關,要獲取完整URL,您可以使用:
SPUtility.GetFullUrl(SPContext.Current.Site,SPUtility.OriginalServerRelativeRequestUrl);
如果您需要使用一些其他參數重定向到相同的URL,這可能很有用。
謝謝
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.