mirror of
https://github.com/ProxymanApp/Proxyman.git
synced 2026-04-27 17:15:49 +03:00
[GH-ISSUE #1448] [Feature Request] If map remote works, the request record should be replaced to real url . #1444
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#1444
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 @lqscript on GitHub (Nov 24, 2022).
Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/1448
Originally assigned to: @NghiaTranUIT on GitHub.
Description
If map remote works, the request record should be replaced to real url like charles
Why this feature/change is important?
@NghiaTranUIT commented on GitHub (Nov 24, 2022):
Thanks. I will update it.
To work around, you can simply use this Snippet code: https://docs.proxyman.io/scripting/snippet-code#change-request-destination-scheme-host-port-path
The snippet code does the same thing as Map Remote does.
From what I know, it will change the URL as you expect 👍
@lqscript commented on GitHub (Nov 24, 2022):
I tried,but it will cause overflow problem when server return bigint in json,even i do nothing in onResponse function.
@NghiaTranUIT commented on GitHub (Nov 24, 2022):
You might turn off the On Response checkbox, so the response body is intact.
@lqscript commented on GitHub (Nov 24, 2022):
It works, thanks for your help!
@DaysJan commented on GitHub (Feb 23, 2023):
Could you please leak any plan? I enjoy various features of Proxyman except copying a mapped request.
@NghiaTranUIT commented on GitHub (Feb 23, 2023):
Thanks. It seems that we should add an option to change the Request URL to the mapped URL.
I will put this feature to 4.5.0 👍
@NghiaTranUIT commented on GitHub (Mar 28, 2023):
There is another user, who request this feature too. I'm working on it now 👍
@NghiaTranUIT commented on GitHub (Mar 28, 2023):
Hey @DaysJan @lqscript, if you don't mind, please try this Beta build: https://download.proxyman.io/beta/Proxyman_4.5.0_Map_Remote_will_update_new_URL.dmg
Changelog
@NghiaTranUIT commented on GitHub (Mar 29, 2023):
Update 2:
@lqscript commented on GitHub (Apr 6, 2023):
@NghiaTranUIT It works as expected, thanks!
@raxityo commented on GitHub (Apr 20, 2023):
@NghiaTranUIT is it possible to opt out of this change? If not, is there any workaround to keep the request transparent from the interface?
My use case - I make requests to production and local environments using the same host but flip the toggle of map remote to switch between the env. Now the requests show up in different sections of the pinned domain (the production domain) and the other features don't use the uniform domain anymore, so it's disruptive.
@NghiaTranUIT commented on GitHub (Apr 20, 2023):
Sorry that this change breaks your current workflow @raxityo. I decide to change the Map Remote Behavior because it makes sense and has the same result with the Charles Proxy app.
I guess I can introduce the Option to switch betwen two mode: Keep the original URL or replace with new URL.
@NghiaTranUIT commented on GitHub (Apr 20, 2023):
To workaround, you can rollback to v4.5.0 👍 I will fix the change.
@raxityo commented on GitHub (Apr 20, 2023):
Thanks so much for your consideration to introduce an option. I am guessing it could behave similarly to the "Preserve Host in Header Field".
I agree with the arguments in favor of this. In fact, this was one of the things I found to be annoying in Charles Proxy because of frequently switching environment when working in full-stack environment :)
@NghiaTranUIT commented on GitHub (Apr 21, 2023):
@raxityo let's try this Beta build: https://download.proxyman.io/beta/Proxyman_4.6.1_Support_Preseve_URL_in_Map_Remote.dmg
You can enable the "Preserve the original URL" in your Map Remote Rule.
@raxityo commented on GitHub (Apr 21, 2023):
This is perfect, Thanks so much @NghiaTranUIT!!
@JasonBoy commented on GitHub (May 1, 2023):
@NghiaTranUIT what's the difference between this new option with the old
preserve host in header, because when i upgrade to 4.7, my map remote rule returns 404 from remote server, i had to switch back to 4.6, i guess it did not preserve the host?@NghiaTranUIT commented on GitHub (May 2, 2023):
@JasonBoy can you explain why the Preserve Host in Header is important? I decide to drop it because I could not find any reason that it should be supported.
For example:
Preserve Host in Headeris OFF), the Host Request is changed fromlocalhost:3000->myserver.com:443-> My server will receive the host `myserver.com:443`` -> No different than I make a real request (https://myserver.com) without using the Map Remote.If the
Preserve Host in Headeris ON, the server receiveslocalhost:3000, which IMO makes no sense 🤔 Why the server needs the original Host (localhost:3000) instead ofmyserver.com?Therefore, I decided to drop this support. If you can share with me the reason why it's important, I'd like to reintroduce it and make it easier 👍
@JasonBoy commented on GitHub (May 2, 2023):
@NghiaTranUIT my case is in browser
www.a.com-> some internal ip like:10.11.12.13, the server of this ip use the host header to proxy to different internal server, i'm not sure if the host is still domain or it changed to ip ?@NghiaTranUIT commented on GitHub (May 2, 2023):
Thanks for your explanation @JasonBoy.
Sorry to all for the break changes. I will add this feature back in the next release 👍
@NghiaTranUIT commented on GitHub (May 2, 2023):
@JasonBoy can you try this Beta build: https://download.proxyman.io/beta/Proxyman_4.7.1_Support_Preserve_Host_and_URL.dmg
I've re-introduced 2 options back:
@JasonBoy commented on GitHub (May 4, 2023):
@NghiaTranUIT it works now, 👍