小项目都是放一个服务器上的。一个服务器上部署多个项目,一个应用占用资源太少了就多部署几个项目。
大项目是一个项目部署多个服务器。
有可能抓不到。有可能app里面有开关,可以临时关闭。
我们的app也有这样的限制,不过测试环境会有开关可以控制 ,不过线上不会弄这种开关。
那已经上线的app到底能不能抓包啊?看有没有开关,有没有做限制。有限制就找开发,让他放开限制。
还有,也不是所有的装了证书就能抓https。就是有的代码里面做了限制,你装证书也没用 ,抓包一样显示unknown。
除非开发关掉开关啊。要问开发有没有做隐藏入口,可以临时关闭开关,比如长按某个位置,然后弹出弹窗,可以修改这种配置。
隐藏入口:就是一个改变配置的入口呗。就是一般的用户不知道怎么操作的那种,只有公司内部人员临时定位问题的时候用到的。
点赞后,一般是点赞请求发送到服务端,然后服务端消息通知发送到对应用户,用户收到点赞消息。
展示了点赞,说明客户端点赞接口请求发送过去了。大概率是服务端没有发消息通知。或者发了客户端没收到。
有权限的话可以自己查查日志,没权限就找服务端开发看下。
这个难道不需要抓包?一般的抓包工具只能抓到客户端主动发的请求。服务端主动发的请求,需要用wireshark这样的抓包工具。
一般的抓包工具只能抓客户端,不能抓服务端。
例如:我在测试的项目里有一个场景:比如进入到某详情页,某个模块不是由前端发请求,拿到返回结果展示的,有部分数据是服务端直接推送。这部分客户端没有请求接口。
我的意思是,接收点赞消息这个场景,一般的抓包工具可以看到客户端发起了点赞这个动作,但是不一定看得到服务端是否根据点赞结果推送了点赞消息(或者试试wireshark)。
也许是服务端没推送,也许是推送后消息阻塞,也许是推送过来客户端没有处理到,类似消息权限没开这种原因。后面再分析下你的推送是用的什么技术,然后再去找问题呗。
所以一般我遇到这种情况,把数据库中点赞消息这个字段的id给服务端,喊服务端开发查一下。
post产生两个数据包。并不是所有浏览器都会在post中发送两次,火狐就只发送一次。
火狐在post中,可能把post的包合并到一起发。合并到一起就是一个包吧,一次还是发一个包。这个要看具体客户端实现,你还可以一个byte一个byte发,反正http本身没规定如何实现。
post发两次就是第一次发header,第二次发body。发一次就是header和body一起发。