ProxymanApp / ProxymanApp/Proxyman

Response breakpoint closes the connection

Open
#1,645 2 comments 0 reactions 1 assignee View on GitHub

@NghiaTranUIT is already working on this.

Since May 23, 2023.

bug
Dominant language
No language data
Stars
7k
Forks
237
PR merge metrics
No merged PRs in 30d

Description

Description

I have the following in my App:

  • I'm doing a request with an Authorization header
  • Whenever the server gives me a 401 then I
    1. Do a token refresh
    2. Retry the original request (with the new token) on the same connection

If I don't specify any breakpoints in Proxyman everything works well, but as soon as I enable response breakpoints and deliver the 401 to my App, my retry call that uses the same connection as the original request fails with a java.net.ProtocolException: Unexpected status line: 0 while establishing the connection. So it appears that this connection has silently be closed.

Steps to Reproduce

  1. Enable response breakpoints
  2. Let the server return a 401 and hit the breakpoint
  3. Deliver the response back to the app
  4. Try to do another request on the same connection --> Fails
  • request breakpoints alone do not seem to cause the issue, but only response breakpoints do
  • doing a retry-call on the same connection when receiving a 200 and hitting the breakpoint does not seem to cause the issue
  • Adding an explicit Connection: close header in the 401 response after it hit the breakpoint, seems to work but is not my desired solution

Current Behavior

Proxyman seems to silently close the connection when receiving a 401 response from the server and delivering it back to my App.
Further requests on the same connection fail, with such a breakpoint in between, while it is working when I disable the breakpoints.

Expected Behavior

The connection should be kept open / mirror the server state.

Environment

  • App version: e.g Proxyman 4.7.1 (47010)
  • macOS version: e.g macOS Ventura 13.3.1

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.