It is common practice for proxy companies to use session IDs inside the proxy user credential string to provide session control and keep the same IP for multiple requests.
Quick example using an Oxylabs proxy (one of the biggest proxy networks):
Full Proxy String: “pr.oxylabs.io:7777:customer-USERNAME-sessid-randomString123:PASSWORD”
Host and port are static: “pr.oxylabs.io:7777”
The proxy user credentials are dynamic: “customer-USERNAME-sessid-randomString123:PASSWORD”
Switching the “randomString123” in front of the “sessid” changes your session and with that also your IP.
Now here comes the problem with using these proxy sessions inside an extension:
Once you set your proxy and submit your user credentials, Firefox will save your user credentials/session ID/IP for the currently set proxy host and keeps using them.
How do we force a re-authentication of the proxy so we can submit a new username and switch our session/IP?