### 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
buffer_.resize(buffer.size());
    memcpy(buffer_.data(), buffer.data(), buffer_.size());
  }
  ~BufferDataSource() override = default;
 private:
  
  uint64_t GetLength() const override { return buffer_.size(); }
  ReadResult Read(uint64_t offset, base::span<char> buffer) override {
    ReadResult result;
    if (offset <= buffer_.size()) {
      size_t readable_size = buffer_.size() - offset;
      size_t writable_size = buffer.size();
      size_t copyable_size = std::min(readable_size, writable_size);
      if (copyable_size > 0) {
        memcpy(buffer.data(), &buffer_[offset], copyable_size);
      }
      result.bytes_read = copyable_size;
    } else {
      NOTREACHED();
      result.result = MOJO_RESULT_OUT_OF_RANGE;
    }
    return result;
  }
  std::vector<char> buffer_;
};
class JSChunkedDataPipeGetter : public gin::Wrappable<JSChunkedDataPipeGetter>,
                                public network::mojom::ChunkedDataPipeGetter {
 public:
  static gin::Handle<JSChunkedDataPipeGetter> Create(