1 changed files with 29 additions and 0 deletions
			
			
		@ -0,0 +1,29 @@ | 
				
			|||
using System; | 
				
			|||
 | 
				
			|||
namespace Apewer.Web | 
				
			|||
{ | 
				
			|||
 | 
				
			|||
    /// <summary>请求资源的 URL 已永久更改。在响应中给出了新的 URL。</summary>
 | 
				
			|||
    public sealed class RedirectResult : HeadResult | 
				
			|||
    { | 
				
			|||
 | 
				
			|||
        /// <summary>新的 URL。</summary>
 | 
				
			|||
        public string Location { get; private set; } | 
				
			|||
 | 
				
			|||
        /// <summary>重定向结果。</summary>
 | 
				
			|||
        /// <exception cref="ArgumentNullException" />
 | 
				
			|||
        public RedirectResult(string location) : base(302) | 
				
			|||
        { | 
				
			|||
            if (location.IsEmpty()) throw new ArgumentNullException(nameof(location)); | 
				
			|||
            Headers.Add("Location", location); | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
        /// <summary>执行。</summary>
 | 
				
			|||
        public override void ExecuteResult(ApiContext context) | 
				
			|||
        { | 
				
			|||
            context.Provider.SetRedirect(Location); | 
				
			|||
        } | 
				
			|||
 | 
				
			|||
    } | 
				
			|||
 | 
				
			|||
} | 
				
			|||
					Loading…
					
					
				
		Reference in new issue