-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[fix] 不同网络环境需要不同的ac_id #38
Conversation
很棒,终于有人提出这个问题了。 |
另外补充一下,ipgw还有一些操作的url参数里涉及到这个ac_id,比如注销。如果可以的话,是不是也要把其他用到这个参数的地方的代码一并改了? |
我这边测试注销的时候没有发现这个问题,执行 ipgw logout 命令能够正常注销,也许这个参数对注销没有影响吧 |
是这样啊,感觉学校这api做的还不够完善和统一啊。什么时候出一个api document,也算是了我们的心愿了。 是先锋的同学吗?真的很棒啊,加油😂 |
确实是浑南先锋的,感谢夸奖🥰 |
感谢修复!因为之前一直是在浑南五舍进行的测试,没有发现这个问题 XD (
在注销操作中,带有该参数的地址是作为 |
棒,我去年收集过一份学校各建筑的id,但是忘记扔哪了😂 |
@xuwhao 我仅遇到过 cas username is empty 的情况,主要是两个场景:
|
@xuwhao 网关后端需要用ticket向cas获取用户名,而ticket是签发给固定service url的,所以service url不一样,或者ticket过期都会导致这个问题。 |
问题版本
ipgw v0.2.0-beta+2021-11-03T15:25:14+0000
操作系统:Windows 10 21H1 19043.1288
现象
在浑南图书馆 NEU 无线网环境下使用 ipgw 工具登录,显示已登录成功,但是 ping 不通公网,公网网页也无法打开
问题定位
经本人测试,拉取最新 master 分支代码,将
/pkg/handler/ipgw.go
104 行 url 中的 ac_id=1 改为 ac_id=15 即可ipgw/pkg/handler/ipgw.go
Line 104 in f2a568a
原因推测
在浑南图书馆 NEU 无线网环境下正常打开 ipgw 网关页面
https://ipgw.neu.edu.cn/
,可见其 url 参数为 ac_id=15这个参数不可能凭空出现,抓包可见,访问 ipgw 网关主页面后,会先访问
https://ipgw.neu.edu.cn/index_1.html
这个页面,之后根据返回的302重定向来跳转至正确的 ac_id 带参页面代码修改
据此,我对代码进行了一次修改,在进行统一认证前先访问
https://ipgw.neu.edu.cn/index_1.html
拿到对应的 ac_id 参数,之后进行正常的统一认证登录。目前经个人测试已经解决图书馆 NEU 无线网的登录问题,理论上也能自适应其它网络环境