Bilibili直播弹幕抓取(2):Fiddler与WireShark
前言
上次提到了 Bilibili 的弹幕传输是基于 WebSocket 的二进制帧,因此给调试带来了一定不便。
但是 WebSocket 归根到底还是 TCP,并且我们已经知道它的帧结构了,剩下的就是抓包了。
这里提供三种方法:websocket-monitor, Fiddler, WireShark。
上次提到了 Bilibili 的弹幕传输是基于 WebSocket 的二进制帧,因此给调试带来了一定不便。
但是 WebSocket 归根到底还是 TCP,并且我们已经知道它的帧结构了,剩下的就是抓包了。
这里提供三种方法:websocket-monitor, Fiddler, WireShark。
最近有一个学长去分析了B站直播弹幕WebSocket协议,我算是跟风去分析了一波。
其实协议本身并不复杂,就是JSON罢了,但是分析的过程稍微有些曲折,这里算是记录一下在这个过程中学到了什么吧。
如何写 C++ 而不是 C with Class
这是我当初在知乎上提出的一个问题,很感谢各位大佬的回答,也感受到了自己的不足,所以这几个月我强迫自己写了不少 C++ 代码,并且认真阅读了 Effective C++ ,个人感觉真是重新学习了 C++ 这门语言。
但是前几天跟别人说我最近在学 C++ ,他一脸诧异的说“那不是大一就学过了吗?”,转念一想,的确是这样,那我这段时间在学什么呢?我沉默了半分钟,给出的回答是“我觉得我想写更优美的 C++ ”。
事实上, C++ 并没有我想象的那么优美,但是 C++ 的确是一门很有魔力的语言,它即让你能看到底层的各种操作,同时也有能力对接一些高层应用,算是一门承上启下的语言。写C++,我能完全知道我的代码在做什么,这大概有一种安心感。
说了这么多,本文就是想在回答这个问题的基础上写一写我认为 C++ 中比较重要的概念和关于 C++ 的一点自己的思考。