mirror of
https://github.com/ProxymanApp/Proxyman.git
synced 2026-04-27 09:05:54 +03:00
[GH-ISSUE #1363] Little Help to find which protobuf message type applied on protobuf viewer? #1355
Labels
No labels
Discussion
Feature request
In Progress...
Plugins
Waiting response
Windows
Windows
bug
duplicate
enhancement
feature
good first issue
iOS
macOS 10.11
question
wontfix
✅ Done
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/Proxyman#1355
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @jjmean2 on GitHub (Sep 15, 2022).
Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/1363
Originally assigned to: @NghiaTranUIT on GitHub.
Description
I have lots of Protobuf rules to parse requests/responses of my server API.
But sometimes I write a matching rule incorrectly, and that incorrectly written rule matches with an unwanted API url.
In case I meet incorrectly parsed data in protobuf viewer for some URL request, I need to find which rule matches that URL, and edit it.
But it's not easy to find matching rule from rules list in Protobuf settings.
Is there a feature to find the matched rule used for parsing protobuf data?
Some kind of filtering feature in Protobuf settings or button for jumping to matched rule editor from Protobuf viewer seems good.
@NghiaTranUIT commented on GitHub (Sep 21, 2022):
I might add the Protobuf Message Name to the Summary Tab 👍
@jjmean2 commented on GitHub (Sep 22, 2022):
Thanks to your reply!
I think it's important that it brings me to the existing matching rule editor for modifying incorrectly matching rule.
Let me explain my situation by an example.
I have an API with url like
https://api.example.com/v1/category/12345that fetches sample.Category message.So I create regex rule of
https://api.example.com/v1/category/.*using sample.Category message.Then I get a new API with url like
https://api.example.com/v1/category/12345/product/9876that fetches sample.Product message. This url matches previous rule using sample.Category message. So when I capture this new API traffic by Proxyman, protobuf viewer shows incorrectly decoded data (using sample.Category message instead of sample.Product).In this case, I want to modify existing rule more precisely such as
https://api.example.com/v1/category/[^/]+. So I need to open editor for existing rule. But I have more than 100 of protobuf rule items, so to find the matching rule, I should check each rule pattern one by one.So it is very helpful if there is a button or menu that opens the editor of currently applied protobuf rule directly from recorded request/response viewer, or similar feature.
If Proxyman already has an equivalent feature, please let me know.
Thanks for reading.
@NghiaTranUIT commented on GitHub (Sep 22, 2022):
Thanks. If the request is matched with any debugging tool, you can find it in Summary Tab -> Debugging Tool.
Look like it doesn't display the Protobuf. I;m going to fix it now 👍
@jjmean2 commented on GitHub (Sep 22, 2022):
Wow, thank you for the information. I didn't know that there is Debugging tool info in the Summary tab.
But I have one concern.
Although I will be able to get matching rule information from the panel, I still need to find the rule from the list of "Protobuf settings" to modify that rule.
(I need to find the rule from this list, and there is no search or filter feature in this list.)
For example, if the panel says that Matching Rule is
Method: GET, Regex: https://api.example.com/v1/category/.*, I need to find which one is the rule that the panel says, from the list to open the editor and modify it.(I want to open this editor for the existing matching rule)
For now, clicking "Protobuf..." menu from the following screenshot opens a new rule editor, even if there is already matched rule.
(This opens Protobuf rule editor creating a new rule, not the editor modifying the existing rule.)
So, I suggest that clicking that menu opens an existing matched rule editor if exists, and lets the user modify the rule pattern instead of creating a new rule.
Thanks for your help and reply!
@NghiaTranUIT commented on GitHub (Sep 22, 2022):
You can check out this build: https://proxyman.s3.us-east-2.amazonaws.com/beta/Proxyman_3.10.0_Show_matched_rule_in_Summary_Tab.dmg
Please note that you have to click on the Body Tab firstly, to load the Protobuf Rule -> Then open the Summary Tab.
The Show button will open the Protobuf List -> Auto select the matched rule.
@jjmean2 commented on GitHub (Sep 22, 2022):
Oh, Thanks, Great! This is exactly what I need 👍
I really appreciate it.
I just have a question. Is there any order which debugging tool will show in Summary panel when multiple debugging tool applied? (e.g. In case that all of Protobuf, Map Local, Breakpoint applied into a single request)
@NghiaTranUIT commented on GitHub (Sep 22, 2022):
Currently, it only displayed the last matched tool even though there are multiple tools applied. It's a shortcoming, we will support it soon 👍