- Electron version:
  1.3.3
- Operating system:
  All

wsj.com uses a header called `Dylan2010.EntitlementToken` which is lost if you register an `onBeforeSenderHeaders` callback. This happens because `DictionaryValue::SetString` does automatic path expansion unless you explicitly call `DictionaryValue::SetStringWithoutPathExpansion'. Pr to follow 

atom/browser/net/atom_network_delegate.cc
ResponseEvent type,
    net::URLRequest* request,
    const net::CompletionCallback& callback,
    Out out,
    Args... args) {
  const auto& info = response_listeners_[type];
  if (!MatchesFilterCondition(request, info.url_patterns))
    return net::OK;
  std::unique_ptr<base::DictionaryValue> details(new base::DictionaryValue);
  FillDetailsObject(details.get(), request, args...);
  
  callbacks_[request->identifier()] = callback;
  ResponseCallback response =
      base::Bind(&AtomNetworkDelegate::OnListenerResultInUI<Out>,
                 base::Unretained(this), request->identifier(), out);
  BrowserThread::PostTask(
      BrowserThread::UI, FROM_HERE,
      base::Bind(RunResponseListener, info.listener, base::Passed(&details),
                 response));
  return net::ERR_IO_PENDING;
}
template<typename...Args>
void AtomNetworkDelegate::HandleSimpleEvent(