hg-pyun / axios-logger

Beautify Axios Logging Messages
MIT License
173 stars 33 forks source link

baseUrl behavior does not correct #101

Open mnixry opened 3 years ago

mnixry commented 3 years ago

Describe the bug Since #97, axios-logger can log full request URL, which is nice for user. However, it does not behave correct in some condition

To Reproduce Steps to reproduce the behavior:

  1. Set up a baseUrl option in axios
  2. Apply axios-logger
  3. Send a request which has full URL which will override default axios baseUrl options
  4. We will get a wrong log.

For example, if we set baseUrl to https://example.com, and use axios instance to request https://another-example.com, axios will actually request https://another-example.com, but axios-logger will log https://example.com/https://another-example.com

Expected behavior axios-logger should log https://another-example.com

Additional context Possible related code: https://github.com/hg-pyun/axios-logger/blob/92125b5d2e3ed630a8cb1ac47334f84b056b09e4/src/common/string-builder.ts#L85-L89 We can use URL object to correct its behavior

combineURLs(baseURL: string, relativeURL?: string): string {
    return new URL(relativeURL, baseURL).toString()
};
hg-pyun commented 3 years ago

@mnixry Oh, Thank you for report. It's a move that didn't get caught in the test case. I think this report will be of great help.

hg-pyun commented 3 years ago

It will be release on 2.6.1