mirror of
https://github.com/ProxymanApp/proxyman-windows-linux.git
synced 2026-04-27 00:45:55 +03:00
[GH-ISSUE #396] [BUG] Map remote websocket support #396
Labels
No labels
Linux
bug
enhancement
enhancement
pull-request
question
✅ Done
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/proxyman-windows-linux#396
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 @mariusvn on GitHub (Apr 2, 2024).
Original GitHub issue: https://github.com/ProxymanApp/proxyman-windows-linux/issues/396
Originally assigned to: @kics223w1 on GitHub.
Description
Does the map remote tool supports websockets on windows ?
@kics223w1 commented on GitHub (Apr 2, 2024):
Yes it does 👍🏻
@mariusvn commented on GitHub (Apr 2, 2024):
jeez that was fast,
is there anthing special to do because i struggle with that.
The link is hidden as it is owned by clients
@mariusvn commented on GitHub (Apr 2, 2024):
on the image the websocket ignore the map remote here
@mariusvn commented on GitHub (Apr 2, 2024):
it is still on the original url (yes it is the same url as the blurred part on the previous image)
@NghiaTranUIT commented on GitHub (Apr 2, 2024):
@kics223w1 please investigate it. Try to Map Remote from WSS (production) to a local WS.
@mariusvn In the Rule text fields, can you try to remove the
wss://prefix part, it should bemy-domain.frand try again? 🤔May I also ask what Proxyman Windows version you're using?
@kics223w1 commented on GitHub (Apr 2, 2024):
Okay, I'll investigate this issue.
@kics223w1 commented on GitHub (Apr 2, 2024):
If you would, can you click on the Summary Tab -> expand the
Debugging Toolnode -> Verify there is the Map Remote information 🤔 .If there is, it means the MapRemote Tool has failed to map your request.
If there is nothing, it means the request doesn't match the MapRemote Tool. Please delete the rule and right click on
the request in the MainTable to create new rule.
For instance:

@mariusvn commented on GitHub (Apr 2, 2024):
i'll take a look in a few minutes, thanks for the active support btw
@mariusvn commented on GitHub (Apr 2, 2024):
So yeah i do have the map remote entry in the debugging tool section
@mariusvn commented on GitHub (Apr 2, 2024):
2.13.0
@mariusvn commented on GitHub (Apr 2, 2024):
same result :/
@kics223w1 commented on GitHub (Apr 2, 2024):
Okay, I'm fixing this issue 👍🏻
@kics223w1 commented on GitHub (Apr 3, 2024):
Found the reason why this issue happened. @mariusvn
When Map Remote Tool started mapping the request, it will parse the origin URL to extract the hostname, port, scheme, etc...
For instance, when I map
https://httpbin.proxyman.app/gettohttps://httpbin.org/get-> The tool will parse thehttps://httpbin.proxyman.app/getto get those above properties.If it fails to parse the origin URL, the tool will ignore the request and do nothing.
May I ask, if your URL contains any invalid characters 🤔 (you don't need to provide the full URL)
If you don't mind, can you test your URL with the below code in https://playcode.io/typescript , I'm pretty sure the result will be false.
@NghiaTranUIT commented on GitHub (Apr 4, 2024):
@kics223w1 The URL is likely valid because modern network clients always construct valid URLs.
@NghiaTranUIT commented on GitHub (Apr 5, 2024):
@mariusvn if you don't mind, please use this Beta build: https://download.proxyman.io/beta/Proxyman+Setup+2.13.0_Fix_Map_Remote_Websocket.exe
and share with me your result 👍
Screenshots
@mariusvn commented on GitHub (Apr 5, 2024):
i will try this afternoon 👍
@mariusvn commented on GitHub (Apr 5, 2024):
It does returns
true.x are alphabetic characters [a-z]
wss://xxx-xxxxx-xxx.xxxxxx.fr/ng-cli-wsSo I tried even without the
wss://prefix and it did not work.it detects that the map remote should apply but mark
-as note and do not map it.it does works perfectly for http. In fact, I am using the map remote tool to simulate that my angular dev server is located on another domain, which works perferctly. (yes this is weird but my clients have a weird setup x) )
I noticed the issue when i wanted to make the live reload work.
it looks like its only with other protocols than
http.@kics223w1 commented on GitHub (Apr 7, 2024):
@mariusvn May I ask, did you enable Allow List, Block List or Network Conditions Tool while working with Map Remote and Websocket 🤔
If you are enabling the Allow List with Map Remote, please turn off the Allow List. There is a bug about Allow List + Map Remote + Websocket.
@mariusvn commented on GitHub (Apr 8, 2024):
Yep that's it !!
Is it possible to add script before or after the map remote step ? because i need to update the origin header to make it work
@kics223w1 commented on GitHub (Apr 8, 2024):
@mariusvn Currently, Scripting doesn't support WebSocket yet.
May I ask, did you need to set the origin header equal the host in Map Remote Editor to make your WebSocket request work, right 🤔
I can refactor the code in Map Remote to do that, no need to use Scripting.
P/S: For HTTP and HTTPS, Scripting executes request after Map Remote.
@mariusvn commented on GitHub (Apr 9, 2024):
Yes that's exactly that
That would be nice but its not super urgent so no worries if i dont have it real soon
Noted ! 👍
@kics223w1 commented on GitHub (Apr 9, 2024):
Okay, I'll refactor the code 👍🏻
@kics223w1 commented on GitHub (Apr 15, 2024):
@mariusvn
The new release 2.14.0 contains the fixed, please give it a try when you get a chance 🚀
Allow List's now working with Map Remote as usual, you don't need to turn off Allow List when using Map Remote Tool.
I also refactored the code in Map Remote Tool to update the origin header 👍🏻