portal页面自动弹出原理

portal页面自动弹出原理

ID:8971886

大小:19.48 KB

页数:2页

时间:2018-04-13

portal页面自动弹出原理_第1页
portal页面自动弹出原理_第2页
资源描述:

《portal页面自动弹出原理》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、在WIFI的应用场景中,有个很典型的应用,叫做CaptivePortal,也叫CaptiveWebPortal(CWP)。大致流程是:1.用户的移动设备(例如手机)接入WIFI。2.打开任意网页。3.得到一个类似Login的页面,需要用户填写一些信息,然后提交。4.认证通过后,允许自由访问网络,否则无法上网。电信、移动等运营商经常会推出一些市区里的WIFI,很多用的就是这种方式。还有像机场等地。有个典型的应用,就是杭州的ihangzhou。iOS,还有MacOS,都有个功能,当接入无线网络后,会自动检测网络是否

2、通。如果不通,则会自动弹出一个页面,让用户去登录。Apple把这种功能叫做CaptiveNetworkAssistant(CNA)。其原理如下:1.发送一个HTTP/1.0的请求到 http://www.apple.com/library/test/success.html 2.接收一个回应,如果回应跟它预计的结果一致,那么认为网络是通的,就不会自动弹出页面。同时,状态栏的WIFI图标出现。流程结束。否则,进入下一步。3.如果收到的回应不是它想要的那个,它就认为有CWP存在。4.如果有CWP存在,iOS就会自动

3、打开一个页面,在这个页面中再请求一次http://www.apple.com/library/test/success.html,这一次,使用的是HTTP/1.1。5.然后就可以打开Login页面了。在第2步中,如果有CWP存在,收到的回应通常是一个Login页面,这个和第5步收到的结果应该是一样的。如果网络能,则可以收到下面的回应。Success

4、>Success只是第2步中,iOS是如何判断的,不得而知。不过只要保证收到上面的响应,则一定能通。那么,第2步中如果没有收到响应,或是收到了非HTTP200的响应又会如何呢?根据我的测试,如果没收到响应,依然会弹出一个窗口。不过,这不是一种正常的CWP状态。非HTTP200的情况,我只试了HTTP302重定向。在这种情况下,iOS不会自动弹出Login页面。在上面的5步中,得到了一个Login页面,然后又会发生什么呢?用户拿到Login页面后,应该填写一些信息,并且提交。iOS会在

5、用户提交后,立即发一边第1步中的请求,再次检测网络。如果此时网络还是不通,iOS会自动断开当前的SSID。不过这个行为好像有点不稳定,具体就不细说了。网络通了后,在iOS上基本有2个现象。一是右上角的“取消”按钮变成”完成“,或是自动关闭这个窗口,行为似乎不太一致。最关键的是顶端状态栏WIFI图标的出现。从现象上看,只要WIFI图标不出来,iOS就不允许有流外出(部分特殊的除外)。**********副作用 **********iOS的这种行为,其实没给用户多少方便,却会带来不少麻烦。我记得在iOS4时,还可以

6、选择是否启用auto-login。不过iOS6已经没有这个选项了。理论上讲,这个功能最麻烦的就是要保证你所在的网络可以访问http://www.apple.com/library/test/success.html。如果仅仅是在公司内部网络,不允许访问外网,那么iOS就无法连接了。【题外话】在iOS5以前,只有open的SSID才会发test请求。(open的SSID指的是没有802.1X或PSK认证的)。而从iOS6开始,连上非open的网络也会发这个test了。所以,在这种内网的情况下,需要防火墙开放www

7、.apple.com的访问,或是WIFIAP可以支持避开CNA的检测。我一直没在网上找到关于CNA的判断标准,不知道Apple搞这么个东西干吗。**********测试结果**********写完此文,心里一直痒痒的,想知道第2步究竟是怎么判断的。于是立即动手测试。我发现,只要响应页面中,的值是Success,大小写敏感,就可以欺骗iOS了。测了iOS6.0和MacOS10.7,结果都一样。这下我心里释怀了。不知道新版本会不会有变化。该死的苹果。</p> </div> <div class="mt-3 bg-white"> <div class="d-lg-block d-none px-3 px-lg-4 py-3 border-bottom text-center font-18"> 当前文档最多预览五页,下载文档查看全文 </div> <div class="detail-fixed-feature d-none d-lg-block" id="detailFixedFeatureBox"> <div class="px-3 px-lg-4 py-3 d-flex align-items-center justify-content-between fixed-feature-box" id="detailFixedFeature"> <div class="d-lg-flex d-none align-items-center"> <div> <a class="btn btn-outline-danger article-state" href="javascript:;" data-id="8971886" data-code="438274" data-title="portal页面自动弹出原理"> <span>侵权申诉</span> </a> <button type="button" class="btn btn-outline-secondary with-light ml-2" data-toggle="modal" data-target="#reportModal" data-id="8971886"><span>举报</span></button> </div> <nav class="d-flex align-items-center ml-4" id="anchorPoint"> <a href="javascript:;" class="btn btn-light anchor-pre px-2"><i class="iconfont text-muted"></i></a> <div class="text-muted mb-0 pre-point-list" id="prePointList"> <a class="px-2 active nav-link" href="#anchorImg0">1</a> <a class="px-2 nav-link" href="#anchorImg1">1</a> <a class="px-2 nav-link" href="#anchorImg2">2</a> / <span class="px-2" id="prePageNums">2</span> </div> <a href="javascript:;" class="btn btn-light anchor-next px-2"><i class="iconfont text-muted"></i></a> </nav> </div> <div class="d-flex align-items-center"> <p class="d-lg-block d-none font-14 text-black-50 mb-0 mr-2">此文档下载收益归作者所有</p> <button class="btn btn-danger detail-download-btn px-3 ml-0 font-16" data-btn="downloadfile" style="width:128px;height:40px;" data-id="8971886" data-price="900" data-size="19.48 KB" data-page="2页" data-type="docx" data-binddown="true" data-isold="new_content" data-vip="0" data-title="portal页面自动弹出原理">下载文档</button> </div> </div> </div> </div> <div class="d-block d-lg-none px-3 px-lg-4 py-3 border-bottom text-center font-14" style="color:#999">当前文档最多预览五页,下载文档查看全文</div> <button class="btn d-block w-100 d-lg-none btn-danger detail-download-btn px-3 ml-0 font-16" data-btn="downloadfile" data-id="8971886" data-price="900" data-size="19.48 KB" data-page="2页" data-type="docx" data-binddown="true" data-isold="new_content" data-vip="0" data-title="portal页面自动弹出原理">点击下载本文档 </button> </div> <div class="px-3 px-lg-4 py-3 bg-white mt-3"> <ul class="nav custom-tab border-bottom" id="myTab" role="tablist"> <li class="nav-item" role="presentation"> <a class="nav-link active px-0 mr-4 font-16 font-weight-light pb-3" id="tips-tab" data-toggle="tab" href="#showTips" role="tab" aria-controls="showTips" aria-selected="true">版权提示</a> </li> <li class="nav-item" role="presentation"> <a class="nav-link px-0 pb-3 font-16 font-weight-light text-black-50" href="/d-8971886.html" >下载文档</a> </li> <dl class="flex-grow-1 mb-0 d-lg-none"> <li class="ml-3 float-right d-lg-none"> <button type="button" class="btn btn-light" data-toggle="modal" data-target="#reportModal" data-id="8971886"><span>举报</span></button> </li> </dl> </ul> <div class="tab-content with-content pt-3" id="myTabContent"> <div class="tab-pane fade show active font-14" id="showTips" role="tabpanel" aria-labelledby="showTips-tab"> 温馨提示: <br> 1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。<br> 2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。<br> 3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。<br> 4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。 <br> </div> </div> </div> </div> <div class="detail-sidebar d-none d-lg-block"> <div id="columnDetailSiderRight"> <div class="detail-yourlike mt-0 pb-2" id="relativeArticle"> <div class="border-bottom py-2 d-flex align-items-center justify-content-between"> <h5 class="font-16">相关文章</h5> <a class="font-14 hover-letter-spacing" href="/ucenter/search/index.html?text=portal页面自动弹出原理" target="_blank" rel="nofollow">更多<i class="iconfont font-12 pl-1"></i></a> </div> <ul class="font-14 like-list"> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-1318358.html" title="js弹出页面窗口和关闭" target="_blank">js<span class="text-danger">弹</span><span class="text-danger">出</span><span class="text-danger">页</span><span class="text-danger">面</span>窗口和关闭</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-docx" href="/p-1485253.html" title="portal认证时无法推送portal认证页面问题的解决办法" target="_blank"><span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证时无法推送<span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证<span class="text-danger">页</span><span class="text-danger">面</span>问题的解决办法</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-docx" href="/p-11053004.html" title="portal认证时无法推送portal认证页面问题的解决办法" target="_blank"><span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证时无法推送<span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证<span class="text-danger">页</span><span class="text-danger">面</span>问题的解决办法</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-docx" href="/p-14046020.html" title="portal认证时无法推送portal认证页面问题的解决办法" target="_blank"><span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证时无法推送<span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证<span class="text-danger">页</span><span class="text-danger">面</span>问题的解决办法</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-docx" href="/p-17444040.html" title="portal认证时无法推送portal认证页面问题的解决办法" target="_blank"><span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证时无法推送<span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>认证<span class="text-danger">页</span><span class="text-danger">面</span>问题的解决办法</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-docx" href="/p-30216667.html" title="使用jq完成页面定时弹出广告" target="_blank">使用jq完成<span class="text-danger">页</span><span class="text-danger">面</span>定时<span class="text-danger">弹</span><span class="text-danger">出</span>广告</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-37932011.html" title="portal主题页面开发介绍" target="_blank"><span class="text-danger">p</span><span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>主题<span class="text-danger">页</span><span class="text-danger">面</span>开发介绍</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-40752908.html" title="Portal用户定制页面说明书" target="_blank">P<span class="text-danger">o</span><span class="text-danger">r</span><span class="text-danger">t</span><span class="text-danger">a</span><span class="text-danger">l</span>用户定制<span class="text-danger">页</span><span class="text-danger">面</span>说明书</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-47117282.html" title="js弹出页面窗口和关闭" target="_blank">js<span class="text-danger">弹</span><span class="text-danger">出</span><span class="text-danger">页</span><span class="text-danger">面</span>窗口和关闭</a> </li> <li class=""> <a class="text-ellipsis office-icon text-dark office-icon-doc" href="/p-55131127.html" title="js弹出一个新页面(方法二)并获得弹出页面的值.doc" target="_blank">js<span class="text-danger">弹</span><span class="text-danger">出</span>一个新<span class="text-danger">页</span><span class="text-danger">面</span>(方法二)并获得<span class="text-danger">弹</span><span class="text-danger">出</span><span class="text-danger">页</span><span class="text-danger">面</span>的值.d<span class="text-danger">o</span>c</a> </li> </ul> </div> <div class="detail-yourlike pb-2"> <div class="border-bottom py-2"> <h5 class="font-16">相关标签</h5> </div> <ul class="font-14 like-list d-flex flex-wrap"> <a class="search-tag" href="/tags/742338/" target="_blank">页面</a> <a class="search-tag" href="/tags/540615/" target="_blank">原理</a> </ul> </div> <script src="/d/js/acmsd/thea1.js"></script> </div> </div> </div> <footer> <div class="container d-none d-lg-block mb-4"> <div class="d-flex justify-content-between footer-nav"> <ul class="d-flex foot-nav"> <li> <h5>常见问题</h5> <a class=text-decoration-none href=/help/wenti/upload/ target=_blank> 关于上传 </a><a class=text-decoration-none href=/help/wenti/xiazai/ target=_blank> 关于下载 </a><a class=text-decoration-none href=/help/wenti/qinquan/ target=_blank> 关于侵权 </a><a class=text-decoration-none href=/help/wenti/fenxaing/ target=_blank> 分享文档赚钱教程 </a> </li> <li> <h5>关于我们</h5> <a class=text-decoration-none href=/help/about/wzjs/ target=_blank> 网站介绍 </a><a class=text-decoration-none href=/help/about/gywm/ target=_blank> 关于我们 </a><a class=text-decoration-none href=/help/about/lxwm/ target=_blank> 联系我们 </a> </li> <li> <h5>版权问题</h5> <a class=text-decoration-none href=/help/banquan/bqsm/ target=_blank> 版权声明 </a><a class=text-decoration-none href=/help/banquan/qqcl/ target=_blank> 侵权处理 </a><a class=text-decoration-none href=/help/banquan/mzsm/ target=_blank> 免责声明 </a> </li> <li> <h5>协议条款</h5> <a class=text-decoration-none href=/help/xieyi/yhxy/ target=_blank> 用户协议 </a><a class=text-decoration-none href=/help/xieyi/fwtk/ target=_blank> 用户服务条款 </a><a class=text-decoration-none href=/help/xieyi/ysbh/ target=_blank> 用户隐私保护 </a> </li> <li> <h5>网站导航</h5> <a class="text-decoration-none help-nav-item" href="/sitemaps.xml" data-name="网站地图" target="_blank">网站地图</a> <a class="text-decoration-none help-nav-item" href="/list.html" data-name="全部分类" target="_blank">全部分类</a> <a class="text-decoration-none help-nav-item" href="/sitemaps/index.html" data-name="资源地图" target="_blank">资源地图</a> </li> </ul> <div class="foot-qrcode d-flex"> <div> <div class="subsitute-bg"><img src="https://www.wenku365.com/d/file/2022/07-08/f23df57d987ef7ad9acb33fe5abf9854.jpg"></div> <p>关注公众号<br></p> </div> </div> </div> </div> <div class="footer-copyright"> <p><a href="/" target="_blank">天天文库</a>站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有【成交的100%(原创)】。</p> <p>本站是网络服务平台方,若您的权利被侵害,侵权客服QQ:3074922707 欢迎举报。</p> <p>Copyright 2004-2021 <a href="https://www.wenku365.com/" target="_blank">wenku365.com</a> All Rights Reserved <a href="https://beian.miit.gov.cn/#/Integrated/index" rel="nofollow" target="_blank">闽ICP备15016911号-5 </a></p> <p>闽公网安备 <a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=35052402000320" rel="nofollow" target="_blank">35052402000320</a></p> <p> <a href="https://www.wenku365.com/zt.html" target="_blank">专题文集</a> <a href="https://www.wenku365.com/zt-90007.html" target="_blank">丨职业培训</a> <a href="https://www.wenku365.com/zt-90005.html" target="_blank">丨实用范文</a> <a href="https://www.wenku365.com/zt-90010.html" target="_blank">丨商业材料</a> <a href="https://www.wenku365.com/zt-90013.html" target="_blank">丨合同协议</a> <a href="https://www.wenku365.com/zt-90009.html" target="_blank">丨PPT专题</a></p> </div> </footer> <script src="//static.wenku365.com/wenku365/js/global.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/clipboard.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/jquery.treeview.js?"></script> <script src="//static.wenku365.com/wenku365/js/jquery.share.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/common.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/downloadFile.js?"></script> <script src="//static.wenku365.com/wenku365/js/loginWindow.js?"></script> <script src="//static.wenku365.com/wenku365/js/windowRecharge.js?"></script> <script src="//static.wenku365.com/wenku365/js/viewer.min.js?"></script> <script src="//static.wenku365.com/wenku365/js/detail.js?"></script> <!-- 2023-05-06 18:55:13 --> </body> </html>