问题
I have the following format in URL.
http://username:password@test.nabin.com/some/url
Here password is something like qDTA*$X)ME/74. When I directly use this password in URL, then the postman does not respond. How should I proceed testing this url?
(In the image the response container is plain white without any error. This indicates, the API was never hit)
回答1:
You can manually encode parts of the URL within the application. These are the docs from version 6.
https://www.getpostman.com/docs/v6/postman/sending_api_requests/requests
Under the URL section:
“Note: Parameters you enter in the URL bar or in the data editor will not automatically be URL-encoded. Right click a piece of selected text, and select “EncodeURIComponent” to manually encode the parameter value.”
回答2:
For the time being, I will share how I handled this. I used two lines of python script for quoting the password and using the output in the postman.
>>> from urllib.parse import quote_plus
>>> quote_plus('qDTA*$X)ME/74')
'qDTA%2A%24X%29ME%2F74'
Then I simply used this quoted password to construct the following new URL:
http://username:qDTA%2A%24X%29ME%2F74@test.nabin.com/some/url
Hopefully someone comes here and answers how we should do it properly.
来源:https://stackoverflow.com/questions/49961858/how-to-handle-url-with-special-characters-present-in-password-in-postman