软件解决路由回流问题
来源:互联网 发布:和皮影客累似的软件 编辑:程序博客网 时间:2024/04/29 10:54
最近在使用CAS 做SSO 时遇到了回流问题
(回流简要说明:
应用和服务在同一内网IP,本身服务和应用又被映射了外网IP,当应用使用外网IP访问服务时,访问被拒绝。因为路由检测到访问的服务在同一内网IP地址上,只能通过内网IP访问,或者更改路由的配置。)
在这里介绍软件的解决方法:
由于CAS验证的需要无法直接将IP配置改为内网IP,所以只能动态的判断,当发生WebException时自动将URL中的地址替换为本机地址,用来解决回流问题
判断的代码如下(ReplaceLocalIP是用来替换本地地址的方法)
try { serverResponse = RetrieveResponseFromServer(validationUrl, ticket); } catch (WebException) { validationUrl = ReplaceLocalIP(validationUrl); serverResponse = RetrieveResponseFromServer(validationUrl, ticket); }ReplaceLocalIP方法:
/// <summary> /// 替换为本地地址针对 回流问题 /// </summary> /// <param name="validationUrl"></param> /// <returns></returns> private string ReplaceLocalIP(string validationUrl) { int iIndex = validationUrl.IndexOf("//"); int iIndex1 = validationUrl.IndexOf("/", iIndex + 2); string sHostOld = validationUrl.Substring(iIndex + 2, iIndex1 - iIndex + 2); string[] ArrayAdd = sHostOld.Split(':'); ArrayAdd[0] = "127.0.0.1"; string sHostNew = string.Empty; foreach (var item in ArrayAdd) sHostNew += item+":"; sHostNew = sHostNew.Remove(sHostNew.Length - 1); string sResult = validationUrl.Replace(sHostOld, sHostNew); return sResult; }
- 软件解决路由回流问题
- 美丽的路由回流
- 关于reflow回流问题
- IP回流问题分析
- IP回流问题分析
- 路由软件 zebra-0.95a 在linux下面编译出现问题的解决
- 静态路由解决一机双网问题
- 静态路由解决一机双网问题
- 解决路由循环的问题
- 路由软件 zebra-0.95a 在linux下面编译出现问题的解决(error: dereferencing pointer to incomplete type)
- 路由软件 zebra-0.95a 在linux下面编译出现问题的解决(error: dereferencing pointer to incomplete type)
- 诊断并解决 IBMLotusDomino8 邮件路由问题
- 解决angularjs ionic的路由问题
- 软件路由
- linux 做防火墙端口回流问题
- DOM回流跟重绘问题
- 还是端口回流问题 TCP协议解析
- 还是端口回流问题 TCP协议解析
- Adobe计划对新版Flash Player高级功能收费
- 李嘉诚给年轻商人的98条忠告
- WCF开发实战系列二:使用IIS发布WCF服务
- getSystemService
- 董事长、总裁、CEO的区别
- 软件解决路由回流问题
- 关于python字符编码
- 您必须知道的十二条社会定律
- NYOJ-525 一道水题【模拟】
- io系统的监控工具-blktrace
- SqlBulkCopy海量地快速
- 美国人高三才学会1元1次方程是如何战胜 勤劳勇敢 的中国人的
- 史蒂夫·乔布斯 (Steve Jobs) 2005年在斯坦福大学毕业
- FLEX发布问题,流错误2032,找不到swz文件