在Senparc.Weixin.dll v4.5.7版本开始,我们提供了Web代理功能,以方便在受限制的局域网内的应用可以顺利调用接口。
有关的修改都在Senparc.Weixin/Utilities/HttpUtility/RequestUtility.cs:
1 #region 代理 2 3 private static WebProxy _webproxy = null; 4 5 /// <summary> 6 /// 设置Web代理 7 /// </summary> 8 /// <param name="host"></param> 9 /// <param name="port"></param> 10 /// <param name="username"></param> 11 /// <param name="password"></param> 12 public static void SetHttpProxy(string host, string port, string username, string password) 13 { 14 ICredentials cred; 15 cred = new NetworkCredential(username, password); 16 if (!string.IsNullOrEmpty(host)) 17 { 18 _webproxy = new WebProxy(host + ":" + port ?? "80", true, null, cred); 19 } 20 } 21 22 /// <summary> 23 /// 清除Web代理状态 24 /// </summary> 25 public static void RemoveHttpProxy() 26 { 27 _webproxy = null; 28 } 29 30 #endregion
使用方法如下:
1、在调用接口之前进行代理消息设置(全局只需一次):
//设置 RequestUtility.SetHttpProxy("http://192.168.1.130","8088","username","pwd");
2、正常调用接口方法,此代理参数将会被自动应用。
当需要清除代理状态时,全局执行RemoveHttpProxy()方法:
//清除 RequestUtility.RemoveHttpProxy();
时间: 2024-10-11 12:30:01