【问题标题】:using a different IP for webservice calls使用不同的 IP 进行 Web 服务调用
【发布时间】:2021-03-01 16:09:45
【问题描述】:

场景 - 现场的多台计算机(数据库、应用程序、报告等)所有系统现在都在使用客户分配的 IP 地址运行。

新的变化是——生成对外部数据提供者(国有网站)的 Web 服务调用的系统需要从不同的 IP 地址发起流量。新的 IP 地址是唯一允许通过防火墙的地址,内部数据流量将停留在系统的 enclave 内,相互通信。同一台机器(应用服务器)是用户使用网络服务器的接口,分配有两个(或更多)IP 地址。

问题来了 - 在代码中,有没有办法让 Web 服务发起者调用使用不同的 IP 地址与外界通信?

【问题讨论】:

    标签: php windows web-services iis-7 iis-8


    【解决方案1】:

    通过httpclient可能很难实现,但是如果你使用asp.net,HttpWebRequest可以帮助你。

     HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://stackoverflow.com");
    
            System.Net.WebProxy proxy = new WebProxy("the IP", 80);
            request.Proxy = proxy;
            using (WebResponse response = request.GetResponse())
            {
                using (TextReader reader = new StreamReader(response.GetResponseStream()))
                {
                    string line;
                    while ((line = reader.ReadLine()) != null)
                        Console.WriteLine(line);
                }
            }
    

    【讨论】:

    • 感谢您的回复-您是否有任何关于需要更改哪些参数以方便此操作的其他信息
    • 我现在在答案中添加示例代码,你可以参考一下。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-06
    • 2014-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多