### Describe the issue

I set `axios.defaults.headers.common['Content-Type'] = 'application/json'`. When firing a `axios.patch` request (without a config), the request uses `application/x-www-form-urlencoded` instead.

### Example Code

```js
// This does not work as expected:
axios.defaults.headers.common['Content-Type'] = 'application/json'

// This does:
axios.defaults.headers.common['Content-Type'] = 'application/json'
axios.defaults.headers.patch['Content-Type'] = 'application/json'
```


### Expected behavior

I expected POST requests to use `axios.defaults.headers.common`, too.

I think this is where the problem (or intended behaviour) comes from: https://github.com/axios/axios/blob/3f53eb6960f05a1f88409c4b731a40de595cb825/lib/core/dispatchRequest.js#L46

### Axios Version

1.4.0

### Adapter Version

_No response_

### Browser

Firefox

### Browser Version

116.0.3 (64-bit)

### Node.js Version

_No response_

### OS

_No response_

### Additional Library Versions

_No response_

### Additional context/Screenshots

_No response_
test/specs/defaults.spec.js
describe('defaults', function () {
  const XSRF_COOKIE_NAME = 'CUSTOM-XSRF-TOKEN';
  beforeEach(function () {
    jasmine.Ajax.install();
  });
  afterEach(function () {
    jasmine.Ajax.uninstall();
    delete axios.defaults.baseURL;
    delete axios.defaults.headers.get['X-CUSTOM-HEADER'];
    delete axios.defaults.headers.post['X-CUSTOM-HEADER'];
    document.cookie = XSRF_COOKIE_NAME + '=;expires=' + new Date(Date.now() - 86400000).toGMTString();
  });
  it('should transform request json', function () {
    expect(defaults.transformRequest[0]({foo: 'bar'}, new AxiosHeaders())).toEqual('{"foo":"bar"}');
  });
  it("should also transform request json when 'Content-Type' is 'application/json'", function () {
    const headers = new AxiosHeaders({
      'Content-Type': 'application/json',
    });
    expect(defaults.transformRequest[0](JSON.stringify({ foo: 'bar' }), headers)).toEqual('{"foo":"bar"}');
    expect(defaults.transformRequest[0]([42, 43], headers)).toEqual('[42,43]');
    expect(defaults.transformRequest[0]('foo', headers)).toEqual('"foo"');
    expect(defaults.transformRequest[0](42, headers)).toEqual('42');
    expect(defaults.transformRequest[0](true, headers)).toEqual('true');
    expect(defaults.transformRequest[0](false, headers)).toEqual('false');
    expect(defaults.transformRequest[0](null, headers)).toEqual('null');
  });
  it("should transform the plain data object to a FormData instance 'Content-Type' if header is 'multipart/form-data'", function() {
    const headers = new AxiosHeaders({
      'Content-Type': 'multipart/form-data'