如何使用POST从Web API重定向到另一个站点?

时间:2019-05-18 07:28:56

标签: asp.net asp.net-mvc asp.net-web-api

我有一个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();
    }
 }

2 个答案:

答案 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