我有一个Web API,可以重定向到另一个站点,如下所示。是否可以使用POST重定向到另一个站点? Response.Redirect似乎只在执行GET。有哪些其他方法可以实现POST?谢谢!
[HttpGet]
public void Load(string type)
{
var response = HttpContext.Current.Response;
//How to do POST here instead of GET ?
response.Redirect("http://localhost:58372/TestController?type=test");
}
public class TestController : Controller
{
[HttpPost]
public IActionResult Index(string type)
{
return View();
}
}
答案 0 :(得分:1)
您不能对服务器端重定向执行POST。 因此,一种选择是使用您的客户端应用程序进行发布请求。
否则,您可以使用Fluentx.Mvc。您可以从Nuget获得它。 您可以阅读在线资源。
答案 1 :(得分:-1)
这是asp的经典代码,不确定是否会有所帮助或您是否在寻找这样的东西:
domain = Request.ServerVariables("HTTP_REFERER")
if instr(1,domain,"yahoo") > 0 or instr(1,domain,"google") > 0 or instr (1,domain,"msn") > 0 or instr(1,domain,"bing") > 0 then
response.redirect "https://DomainName.com"
end if