Tiện ích trình duyệt Firefox
  • Tiện ích mở rộng
  • Chủ đề
    • cho Firefox
    • Từ điển & gói ngôn ngữ
    • Các trang web trình duyệt khác
    • Tiện ích cho Android
Đăng nhập
Xem trước Diff HTTP

Diff HTTP bởi limkokhole

Diff the network traffic in real-time to observe the URLs variant over time.

3.7 (3 reviews)3.7 (3 reviews)
28 Users28 Users
Bạn sẽ cần Firefox để sử dụng tiện ích mở rộng này
Tải xuống Firefox và tải tiện ích mở rộng
Tải xuống tập tin

Siêu dữ liệu mở rộng

Ảnh chụp màn hình
Diff collected HTTP URL in real-time. It will diff current URL with previous CLOSEST MATCH url. As you can see in the screenshot, it will get the closest variant to diff video only with video, instead of video with audio in YouTube.The sequence number "&seq=" keep increase in constant on Facebook. But then only "&cb=" always changed while "&seq=" not always increase. This extension unveil the hidden rule of complicated urls  in  instant.Click Post data or Headers cell or question marks (under URL expanded) to open windows to view the diff.Support "Clear", "Pause", "All tabs", "Diff only if host same", and also include data URL buttons. 

Also Status, Method, Post data, human-readable time, sent headers, and received headers columns.

Since "Recv headers" on [Prev] URL may not receive yet before shows [Curr] header, so special tag called "[Wait]" and "[Waited]" which may marked on "Recv Headers" column.[New] indicated this URL on its first appearance. And [Same] indicated the URL is duplicated with previous CLOSEST MATCH URL after diff.  Same URL doesn't means Post data or headers is same.data:image will shows If clicked include data URL button, but not recommend to use on daily basics since it required more processing resources.Hover on [Prev] or [Curr] title to see its URL tool-tip on popup window..
Về tiện ích mở rộng này
Diff the network traffic in real-time to observe the urls variant over time.


Click here to play demonstration video v3.0 in YouTube


How to use:
After installed, right-click on webpage to open context menu and choose "Inspect Element". After inspector done loading, click the "Diff HTTP" tab. Navigate/Refresh the webpage to capture and diff network traffic in real-time.


Brief:
This extension capture network traffic in developer tools Diff HTTP tab, and then diff the current entry (URL/Post data/Sent Headers/Received Headers) with the previous CLOSEST MATCH entries if meet “The Rules”. The first entry will always marked as [New] since no previous entry. The second entry and the following may mark as any of [New]/[Diff]/[Same] after it meets the rule and diff.

Note that the Post data and headers are choosen depends on it’s URL.

Post data column: Mark as [None] if no compare AND curr no post data. Mark as [Same] if both(curr/prev) has same (no [None]) post data. Mark as [Same] plus underline with black padding if both(curr/prev) has [None] post data.

Mark as [Wait] in "Recv Headers" if prev URL's "Recv Headers" still empty, it may updated to [Waited:Diff|Same] later after received prev "Recv Headers".


Something is broken ?
1. Currently no support on Private Window.

2. The panel will shows blank if you click the “Diff HTTP” tab before “Inspector” tab loading done, bug report at https://bugzilla.mozilla.org/show_bug.cgi?id=1424515

3. You may need to upgrade your firefox to latest version if panel doesn’t capture anything.

4. Change panel black theme to white by navigate: about:config -> devtools.theme -> double-click the "dark" Value and edit it to "white".


Logic behind the scene:
Everytime the URL captured insert to the table, the internal all entries list will be sort right away. Due to the list is always has been sorted:
[1] It only need to do binary sort when insert new single entry.
[2] It can quickly picks 2 siblings of current entry which consider as 2 CLOSEST MATCH.

Then it will try to calculate the diff count for both siblings, and try to pick the least count of diff which is the 1st CLOSEST MATCH. If it did match “The Rules” below, then it will choosen to diff with the current entry. If the 1st CLOSEST MATCH sibling doesn’t match “The Rules”, then it will try the 2nd CLOSEST MATCH to test the “The Rules”. If both sibling failed to pass the test of “The Rules”, then it will give up and mark current entry as [New].


The Rules:
The url https://mozilla.org/video/foo/hi?q=1 will compare with https://mozilla.org/video/foo/hello?q=1 since the protocol://path1/path2/(except last path) are same, i.e. both have the same prefix https://mozilla.org/video/foo

The url https://mozilla.org/video/foo/hi?q=1 will NOT compare with https://mozilla.org/video/bar/hello?q=1 since the middle path /foo and /bar are different.

The url https://mozilla.org/video/foo/hi?q=1 will NOT compare with https://mozilla.com/video/foo/hello?q=1 since both hosts are different, i.e. https://mozilla.org not equal to https://mozilla.com.

The reasons how this rules has been choosen is because of the valuable comparison of query string/headers between 2 URLs most likely target on filename/last path with the same host and middle path. You can imaging that youtube.com/video/a.mp4 shouldn’t diff with youtube.com/audio/b.m4a, instead youtube.com/video/a.mp4 should diff with youtube.com/video/b.mp4 as possible. But I added a tick button called ‘Diff only if host same’ (i.e. as long as both hosts are same) to allow youtube.com/video/a.mp4 and youtube.com/audio/b.m4a to diff. If compare google.com with facebook.com, it doesn’t useful in most cases since their difference is big, so no support to diff different hosts.


Some Features:
  1. Click the [Diff] URL entry to reveals the current and previous entry URL. You can copy the URLs by click to select and Ctrl+C.
  2. Click the [Diff/Same/New/] URL entries to expands if not enough space of height.
  3. Click the Post data and headers entries to open new window to show the [prev][diff][current] side by side comparison.
  4. Hover the top bar buttons to popup functionality tooltip.
  5. Status other than 200 and Method other than GET will highlight as bold for easier to spot on.
  6. Click "Diff" button to manually diff the text you want, or direct edit the fields on popup window then click "Diff" button to diff.
  7. Tick "All Tabs" checkbox to combine all tabs traffic. It also useful to see traffic if certain site block inspector.

Todo:
You might noticed the above rules are not yet perfect, it's not time-awareness for same URL pattern, i.e. the multiple same pattern of previous URL get chosen without order by time. I already has solution to solve this but no time to complete it.

Troubleshoot:
You should visits Add-ons settings page at about:addons , then select "Check for Updates" or "Update Add-ons automatically" to get latest patch.

Privacy Concerns:
No data send to external ip, all data diff in web browser side only. This Firefox extension is zip and plain text, Mozilla staff and everyone can review my code and report abuse to Mozilla if something went wrong.

Thanks, and feel free to buy me a coffee :p - https://www.paypal.me/limkokhole
Được xếp hạng 3,7 (bởi 1 người dùng)
Đăng nhập để đánh giá tiện ích này
Chưa có xếp hạng nào

Đã lưu xếp hạng sao

5
2
4
0
3
0
2
0
1
1
Đọc tất cả 3 đánh giá
Quyền hạn và dữ liệuTìm hiểu thêm

Quyền hạn bắt buộc:

  • Truy cập dữ liệu của bạn trên mọi trang web
Thêm thông tin
Liên kết tiện ích
  • Trang chủ
  • Trang hỗ trợ
  • Email hỗ trợ
Phiên bản
3.5
Kích cỡ
73,21 KB
Cập nhật gần nhất
6 năm trước (21 Thg 01 2020)
Thể loại có liên quan
  • Phát triển Web
  • Khác
Giấy phép
Mozilla Public License 2.0
Lịch sử các phiên bản
  • Xem tất cả phiên bản
Thêm vào bộ sưu tập
Báo cáo tiện ích này
Hỗ trợ nhà phát triển này

Nhà phát triển của tiện ích mở rộng này yêu cầu bạn giúp hỗ trợ sự phát triển liên tục của nó bằng cách đóng góp nhỏ.

Đóng góp ngay bây giờ

Ghi chú phát hành cho phiên bản 3.5
Recent versions of Firefox break my extension which not expand url when click on truncated long url. (Can test in YouTube stream url).
Tiện ích mở rộng khác của limkokhole
  • Chưa có xếp hạng nào

  • Chưa có xếp hạng nào

  • Chưa có xếp hạng nào

  • Chưa có xếp hạng nào

  • Chưa có xếp hạng nào

  • Chưa có xếp hạng nào

Đi đến trang chủ Mozilla

Tiện ích

  • Giới thiệu
  • Blog tiện ích Firefox
  • Extension Workshop
  • Trung tâm nhà phát triển
  • Chính sách nhà phát triển
  • Blog cộng đồng
  • Diễn đàn
  • Báo cáo một lỗi
  • Hướng dẫn đánh giá

Trình duyệt

  • Desktop
  • Mobile
  • Enterprise

Sản phẩm

  • Browsers
  • VPN
  • Relay
  • Monitor
  • Pocket
  • Bluesky (@firefox.com)
  • Instagram (Firefox)
  • YouTube (firefoxchannel)
  • Riêng tư
  • Cookie
  • Pháp lý

Trừ trường hợp khác đã ghi chú, nội dung trên trang này được cấp phép theo giấy phép Creative Commons Attribution Share-Alike v3.0 hoặc bất kỳ phiên bản nào sau này.