superagent
superagent copied to clipboard
The agent() set default behavior is nonsensical
No mean to offend, but I find that agent's default setting behavior to be nonsensical.
I want the agent to manage the cookie for me. But I still need to send query with different query parameters in the requests. Thinking this is a pretty common and reasonable use case. After all that's what happens if you make http request from a browser.
If I am not mistaken, the current api virtually prohibits you from doing that. For example
const agent = superagent.agent()
await agent.get('/xyz').query({ id: 1 })
await agent.get('/xyz') // with ?id=1
await agent.get('/xyz').query({id: undefined }) // without ?id=1
await agent.get('/xyz') // with ?id=1 again
The current api means the first query parameter you send automatically becomes the default for all of the subsequent requests and without any way of removing that default.