我在Windows服务器上运行asp.net web api应用程序。我有2个不同的IP地址的网站。当应用程序部署在其中一个站点上时,IsLocal为true,在其他站点上部署时则为false。
检查源代码,可以归结为:
[DllImport("aspnet_state.exe", CharSet=CharSet.Ansi)]
internal static extern void STWNDGetLocalAddress(IntPtr tracker, StringBuilder buf);
这是返回本地地址的方法,为什么不是第二个ip有效?网络配置看起来像这样(.79 ip-address是IsLocal返回false的地址)
如何让IsLocal考虑第二个ip?
答案 0 :(得分:3)
IsLocal
在以下三种情况中都会返回true:
您的第一步应该是注销传入请求的IP,以便您可以确定Web API认为哪些来源。