1
我们公司有一个内部API(.NET WebApi),可以为我们的许多应用程序提供服务。现在,我们将在外部托管一个应用程序,并且决定不要将我们的主服务器打开到互联网。.NET中的Server.Transfer /重定向WebApi
相反,他们将在独立的服务器中创建一个包装,该服务器在我们的防火墙中正确设置并且可以访问我们的网络。
问题是:我们希望这个包装API尽可能简单,基本上将请求重定向到我们的内部API。
事情是这样的:
[HttpGet]
[Route("api/PDF/{orderid}")]
public IHttpActionResult GetOrderPDF(string orderid, bool showpictures = false, string disposition = "attachment")
{
string url = "http://MYINTERNALSERVER/api/PDF/" + orderid;
System.Uri uri = new System.Uri(url);
return Redirect(uri); //Server.Transfer ?
}
有关使用此方法的问题是,我的外部客户端将尝试访问我们的内部服务器,当然,将无法访问。
我们想要一个包装,所以我们只公开我们想要的方法。
我阅读了关于IIS重定向,但如果我重定向所有请求,我几乎所有的方法都暴露给互联网。
有什么建议吗?
这是一个Windows服务器,所以NGINX不会工作。但是,您引导我走向正确的道路,并在IIS上安装并设置了URL重写器。工作得很好! – Catinodeh