Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable running proxy as a backend for Request Capture #325

Closed
guilt opened this issue Nov 22, 2019 · 12 comments
Closed

Enable running proxy as a backend for Request Capture #325

guilt opened this issue Nov 22, 2019 · 12 comments
Labels
discussion Talking over coding need information Requires more info

Comments

@guilt
Copy link

guilt commented Nov 22, 2019

Often, while writing new clients, or debugging existing API's, it is often useful to use a tool such as Charles Proxy. It allows one to save traces (request + response) and reload them again for reviewing as well.

Would be useful if Postwoman came up with a way to act as such a proxy, and one could connect existing apps / browsers on them, and look through the requests / responses. Would also be helpful to generate user signed certificates if one wishes to debug through TLS encrypted requests as well.

Ask:

  1. A standard way to load and import traces, to begin with. Please support existing HTTP capture trace formats, such as Charles' .trace files etc.
  2. Look at actually enable the proxying feature.
  3. Enable support for saving traces as well, so they can be reused later across app sessions.

Alternatives:
N/A

Additional Context:
N/A

@liyasthomas
Copy link
Member

liyasthomas commented Nov 22, 2019

Hi there!
Postwoman have proxy support! It allows you to request responses from restricted endpoints, hide your IP, avoid CORS issues and other functionalities.

Proxy mode is global so it'll be also enabled for GraphQL testing too.

To turn on Proxy; Settings > Proxy

@liyasthomas liyasthomas added discussion Talking over coding need information Requires more info labels Nov 23, 2019
@guilt
Copy link
Author

guilt commented Nov 23, 2019

Okay, maybe I wasn't talking about using a proxy, but being one, so that other apps could connect to Postwoman, and we can see the requests on it, and capture them for future use

@liyasthomas
Copy link
Member

Oh! my mistake while interpreting that. Let's discuss over it.
Do you have any use cases or existing projects that does this?

@guilt
Copy link
Author

guilt commented Nov 23, 2019

Yes. I routinely use app packet captures to identify request patterns, time between requests and would like to save some of them for later.

It's way easier than me trying to type out all the parameters, is to fill it from an existing source.

@guilt
Copy link
Author

guilt commented Nov 26, 2019

I was looking around for libraries so I could explain this, a starting point may be to look at: https://github.com/alibaba/anyproxy and see if possible to integrate their code / libraries(?)

More importantly, the point of proxying may not be to allow TCP connect / tunnel, but more about per-request capturing and debugging. So HTTP CONNECT method isn't what the solution will do.

@NBTX
Copy link
Contributor

NBTX commented Nov 28, 2019

What if we added the functionality to the proxy server to act as a packet capture and then pass this to the postwoman interface?

So a workflow would be:

  1. setup a copy of the Postwoman proxy server and enable some packet capture option.
  2. connect the Postwoman app to the proxy server as usual.
  3. connect to the proxy server on the intended device and perform the requests that you wish to be logged.
  4. packets are logged in a packet capture tab in Postwoman.

@guilt
Copy link
Author

guilt commented Dec 5, 2019

That's a very useful start :) Would love to see this in action.

@liyasthomas
Copy link
Member

liyasthomas commented Dec 25, 2019

@NBTX think this issue fits better in proxy repo.

@NBTX
Copy link
Contributor

NBTX commented Dec 26, 2019

For sure. (You'll need to transfer the issue.)

@NBTX NBTX changed the title Enable running as Proxy for Request Capture Enable running proxy as a backend for Request Capture Dec 26, 2019
@liyasthomas
Copy link
Member

Issues can only be transferred in between repos under same profile. Can't transfer to an organization.

@Congee
Copy link

Congee commented Jan 14, 2020

This feature is helpful when you reverse-engineer an api. I currently use Fiddler, mitm-proxy, or Charles.

@liyasthomas
Copy link
Member

Transferred this issue to hoppscotch/proxyscotch#10

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Talking over coding need information Requires more info
Projects
None yet
Development

No branches or pull requests

4 participants