#### Describe the bug
For some REST API endpoints we use [Google Cloud API Custom Methods](https://cloud.google.com/apis/design/custom_methods) URL design like `/api/resource:customVerb`.

These worked with `axios` prior to **0.27.1** but now they result in an error like:

`AxiosError { message: "Unsupported protocol /api/resource:', code: "ERR_BAD_REQUEST", ... }`

#### To Reproduce
Try to have `axios` get a relative URL with a colon in it, e.g.
```js
axios.get("/api/resource:customVerb");
```

#### Expected behavior
Should continue working as it did before version **0.27.1**.

#### Environment
 - Axios Version: 0.27.1
 - Browser: Microsoft Edge 100.0.1185.50
 - Node.js Version: 16.14.2
 - OS: Windows 10 Pro

#### Additional context/Screenshots
n/a

lib/adapters/xhr.js
if (config.cancelToken || config.signal) {
      
      
      onCanceled = function(cancel) {
        if (!request) {
          return;
        }
        reject(!cancel || (cancel && cancel.type) ? new CanceledError() : cancel);
        request.abort();
        request = null;
      };
      config.cancelToken && config.cancelToken.subscribe(onCanceled);
      if (config.signal) {
        config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);
      }
    }
    if (!requestData) {
      requestData = null;
    }
    var tokens = fullPath.split(':', 2);
    var protocol = tokens.length > 1 && tokens[0];
    if (protocol && [ 'http', 'https', 'file' ].indexOf(protocol) === -1) {
      reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));
      return;
    }
    
    request.send(requestData);
  });
};