### Preflight Checklist
<!-- Please ensure you've completed the following steps by replacing [ ] with [x]-->

* [x] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/master/CONTRIBUTING.md) for this project.
* [x] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md) that this project adheres to.
* [x] I have searched the issue tracker for an issue that matches the one I want to file, without success.

### Issue Details

* **Electron Version:**
  8.0.1
* **Operating System:**
  macOS 10.14.6

### Expected Behavior
Send a request with `referer` header. It's worked with Node's `http/https` module, but failed when I change to `net.request`.

### Actual Behavior
No referer header

### To Reproduce
```js
ses.protocol.interceptStreamProtocol("https", (request, callback) => {
	const resp = sendRequestWithNetRequest({
       url: request.url,
       method: request.method,
	   headers: {
			...request.headers,
			referer: request.referrer  // only referrer has been ignored!!
       }
    })
    callback({
        data: resp.body,
        statusCode: resp.statusCode,
        headers: resp.headers
      });
});
```

shell/browser/api/electron_api_url_loader.cc
}
  bool use_session_cookies = false;
  opts.Get("useSessionCookies", &use_session_cookies);
  if (!use_session_cookies) {
    request->load_flags |= net::LOAD_DO_NOT_SEND_COOKIES;
  }
  
  
  request->report_raw_headers = true;
  v8::Local<v8::Value> body;
  v8::Local<v8::Value> chunk_pipe_getter;
  if (opts.Get("body", &body)) {
    if (body->IsArrayBufferView()) {
      auto buffer_body = body.As<v8::ArrayBufferView>();
      auto backing_store = buffer_body->Buffer()->GetBackingStore();
      request->request_body = network::ResourceRequestBody::CreateFromBytes(
          static_cast<char*>(backing_store->Data()) + buffer_body->ByteOffset(),
          buffer_body->ByteLength());
    } else if (body->IsFunction()) {
      auto body_func = body.As<v8::Function>();
      mojo::PendingRemote<network::mojom::ChunkedDataPipeGetter>
          data_pipe_getter;
      chunk_pipe_getter = JSChunkedDataPipeGetter::Create(
                              args->isolate(), body_func,
                              data_pipe_getter.InitWithNewPipeAndPassReceiver())
                              .ToV8();
      request->request_body = new network::ResourceRequestBody();
      request->request_body->SetToChunkedDataPipe(std::move(data_pipe_getter));
    }
  }