客户部署的线上AEMS系统发生一个诡异的问题.
先说下环境, 客户的系统部署于客户内网环境, 在外网网关做了端口映射, 客户使用的是贵州电信的网络; 公司使用的是浙江联通的网络.
问题的现象: 客户处可以正常访问系统加载数据, 但在公司通过外网访问, 可以访问系统, 其他页面都可以正常加载数据, 但企业信息配置的因子配置界面, 却无法加载因子数据, 导致在公司这边没法正常查看以及配置企业因子数据.
该页面有发出三个Ajax请求到AEMS系统, 但只有第一个GET请求正常响应返回 200 OK, 后两个AJAX请求很诡异的没被响应, 通过Chrome调试, 发现其请求的type是"Pending", Status Text 是 "failed", 诡异就诡异在, 后两个AJAX请求,服务器端应用系统根本就没有收到(通过服务器端AEMS应用在Controller层的打印日志, 以及通过远程Debug都可以证明这一点).
一开始怀疑是AJAX发送GET请求的URL过长, 察看了下字符数, 有175个字符, 不放心, 就将请求类型改为POST测试, 可是问题依旧, 看来不是这个原因.
再仔细想想, 该问题, 同样的代码同样的逻辑, 在公司开发环境都是正常的, 在客户现场的环境, 也是正常的. 但惟独通过公司的网络访问客户现场的系统, 会出现Ajax请求失败, 数据无法加载. 那会不会是公司与客户环境之间的网络有问题呢?
网上查下资料, 在linux下使用tcpdump可以抓到http协议包,可以使用工具wireshark分析查看tcpdump抓到的http包。(wireshark软件在 http://sourceforge.net/projects/wireshark/ 下载)。
①tcpdump 抓取HTTP包
# tcpdump -s 0 tcp port 80 -w /root/tcpdump.cap
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
^C576 packets captured
576 packets received by filter
0 packets dropped by kernel
② 使用wireshark分析
使用wireshark的File--->Open菜单打开该文件,即可直观地看到通信包细节。
其中 124.160.225.218 是浙江联通的网关, 这个抓包结果显示是浙江联通网关对应用服务器之间同一个TCP包, 在不同端口有重复的响应? 拜求各位大神解惑... 该问题要如何解决呢..
相关推荐
在这篇文章中,我们来讨论一个在使用AJAX技术进行前后端数据交互过程中非常常见的问题:即使数据成功返回,AJAX调用却错误地进入了error回调函数。在深入分析问题原因之前,作者首先提供了一个可能的解决方案:在...
Ajax,全称为Asynchronous JavaScript and XML,是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它的出现极大地提升了Web应用程序的用户体验,因为它允许数据在后台与服务器进行交换,而不影响用户...
Ajax的核心在于异步通信,它允许网页在不重新加载整个页面的情况下,与服务器交换数据,从而实现局部刷新,大大提高了用户体验和服务器效率。 #### Ajax的关键组成部分 - **XHTML和CSS**:用于页面的结构和样式,...
- **控制器**:在收到分页请求时,调用服务层或数据访问层获取对应页码的数据。 - **Ajax请求**:通过JavaScript发送Ajax请求到服务器,携带当前页码和每页数量等参数。 - **服务器响应**:返回JSON格式的分页数据,...
它主要的目的是与TRSWCM表单选件协同工作,以便公网用户可以通过外网访问表单选件的相关发布页面,以及向表单发布采集提交数据时进行用户管理。 ### 用户手册内容 用户手册由北京拓尔思信息技术股份有限公司(TRS...
SharpMap地图Ajax控件适用于各种需要地图展示和交互的Web项目,如房地产网站的房源定位、交通导航系统、环境监测、地理数据分析等。通过这个控件,开发者可以快速构建出功能强大的地图应用,同时确保良好的性能和...
7.4 Ajax数据流的访问策略 7.4.1 设计安全的Web层 7.4.2 限制对Web数据的访问 7.5 小结 7.6 资源 第8章 性能 8.1 什么是性能? 8.2 JavaScript的执行速度 8.2.1 测定应用时间的艰难方式 8.2.2 使用Venkman性能分析器 ...
- **ASP.NET 2.0 AJAX Extensions**:提供了序列化与反序列化的支持,允许客户端访问WebService方法,并且包含了ScriptManager、UpdatePanel等关键控件。 ##### 3.2 关键控件介绍 - **ScriptManager**:管理页面上...
- **异步数据加载**:在页面加载后通过Ajax请求动态加载数据。 - **交互式组件**:使用Ajax技术使页面中的组件更加互动,如拖拽排序、弹出框等。 #### 小贴士与更多技巧 除了基本的使用方法外,还有一些技巧可以...
传统的Web应用依赖于刷新整个页面来与服务器交互,而Ajax则采用异步数据交换的方式,使得网页能够在不重新加载整个页面的情况下更新部分数据,从而提高用户体验。 #### 二、Ajax的关键技术 **1. XHTML和CSS**:...
- 考虑SEO(搜索引擎优化),因为AJAX加载的内容可能无法被爬虫抓取,可以使用服务器端渲染或渐进增强技术来解决。 总结来说,AJAX 提供了一种高效、用户友好的方式,让Web应用程序能够更流畅地与服务器进行交互,...
"秀影短片采集系统内置数据"是一款专用于收集、整理和管理短视频内容的软件工具。这个系统的功能可能包括从各个网络平台抓取、下载、分类以及存储短片,为用户提供一个集中化的短片资源库。它可能包含了各种用于处理...
4. **访问控制问题**:传统的基于角色的访问控制策略可能不足以应对Ajax环境下复杂的用户权限管理需求。 #### 解决方案 为了应对上述安全问题,本文提出了一种结合基于角色和基于逻辑的访问控制策略。基于角色的...
然而,AJAX也带来了一些挑战,如SEO优化、跨域限制、安全性和性能问题等,这些都需要开发者在设计和实现过程中予以充分考虑。 综上所述,AJAX作为一种新的Web设计方法,通过异步通信和局部页面更新,极大地提升了...
Pager则是分页控件,用于在大量数据中实现分页浏览,提升用户体验,避免一次性加载过多数据导致页面响应变慢。 【标签】“翻页控件”是这个项目的一个关键特性,说明这个例子着重于如何在Web应用中实现高效且用户...
使用内容分发网络(CDN)和异步JavaScript与XML(AJAX)技术可以有效地加速WordPress网站中jQuery库的加载速度。以下是详细知识点的阐述: 首先,CDN是一种通过互联网分发服务的技术,它可以将数据(如文件、图片、...
- **概念**:传统上,客户端脚本如JavaScript无法直接访问服务器端的Web服务,需要通过服务器端脚本来实现。ASP.NET AJAX Extensions引入了客户端脚本访问Web服务的能力。 - **实现**:通过ScriptManager和Service...
2017年2月发布的503版本是该框架的一个重要更新,它可能包含了多项性能优化、新功能的添加以及已知问题的修复。"Telerik_UI_for_ASP.NET_AJAX_2017_2_503_Dev"这个标题暗示了这是一个开发版,专门针对开发人员,以便...
优化 企业职位列表页,职位AJAX加载数量改为20,职位重复问题(黄山市民网指导);优化 首页‘名企招聘’下,职位按刷新时间排序(姜堰人才交流网指导);优化 页面顶部logo调用;优化 PC端找工作、找人才顶部搜索区、...