-
Couldn't load subscription status.
- Fork 33
Description
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:
- Set up a
baseUrloption inaxios - Apply
axios-logger - Send a request which has full URL which will override default
axiosbaseUrloptions - 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:
axios-logger/src/common/string-builder.ts
Lines 85 to 89 in 92125b5
| combineURLs(baseURL: string, relativeURL?: string): string { | |
| return relativeURL | |
| ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '') | |
| : baseURL; | |
| }; |
We can use
URL object to correct its behavior
combineURLs(baseURL: string, relativeURL?: string): string {
return new URL(relativeURL, baseURL).toString()
};