Proxyman icon indicating copy to clipboard operation
Proxyman copied to clipboard

Request to localhost gets full URL as a path in HTTP request

Open niw opened this issue 7 months ago • 3 comments

Description

Sending a request to localhost makes a HTTP request that includes full URL in path instead, which compeltely breaks a behavior of Proxyman as a HTTP proxy. The behavior is introduced in 5.20.0 (52000).

Steps to Reproduce

  1. Run nc -l 3000 and keep it running.
  2. Run Proxyman 5.20.0 and enable HTTP proxy.
  3. Run curl -v --proxy http://localhost:9090 http://localhost:3000.

Current Behavior

nc -l 3000 echos following request

$ nc -l 3000
GET http://localhost:3000/ HTTP/1.1
Host: localhost:3000
User-Agent: curl/8.7.1
Accept: */*
Connection: Keep-Alive

Expected Behavior

HTTP request shouldn't include full URL such as a procotol, hostname etc, but only path.

$ nc -l 3000
GET / HTTP/1.1
Host: localhost:3000
User-Agent: curl/8.7.1
Accept: */*
Connection: Keep-Alive

[!NOTE] This is the output with Proxyman 5.19.0.

Environment

  • App version: Proxyman 5.20.0
  • macOS version: macOS 15.5

niw avatar Jun 03 '25 22:06 niw

It's fixed with this beta build @niw : https://download.proxyman.io/beta/Proxyman_5.20.0_Fix_URI_in_Requests.dmg

Sorry, I fixed this issue https://github.com/ProxymanApp/Proxyman/issues/2342 and it causes your problem.

I finally fixed both 👍

NghiaTranUIT avatar Jun 04 '25 03:06 NghiaTranUIT

@NghiaTranUIT Confiremd that linked patched 5.20.0 works as expected. Thank you for quick reply.

niw avatar Jun 04 '25 04:06 niw

Thanks, I will include this fix on the next release 👍

NghiaTranUIT avatar Jun 04 '25 04:06 NghiaTranUIT