开发者

Return 307 Temporary Redirect in ASP.NET MVC

Is it possible to return a 307 Temporary Redirect from a controller in开发者_开发百科 ASP.NET MVC?

I sometimes need to re-POST the values submitted from one form to another URI.

Using JavaScript to do the selection on the client side (thereby bypassing this issue) is not an option.

Redirecting via a GET is not an option as posted data includes an 8k string which is likely to mean that the URI would be too long for some (many?) browsers.

Is this even possible?


To return a 307 redirect result from an MVC action, use the following:

public ActionResult Action()
{
    string url = GetRedirectUrl()
    HttpContext.Response.AddHeader("Location", url);
    return new HttpStatusCodeResult(307);
}


ASP.NET Core:

 public RedirectResult (string url, bool permanent, bool preserveMethod);

So

return Redirect(url, false, false); // 302
return Redirect(url, true, false);  // 301
return Redirect(url, false, true);  // 307
return Redirect(url, true, true);   // 308


Take a look at the following article - you can use the same technique for 307:

301 Redirects

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜