diff --git a/warcprox/mitmproxy.py b/warcprox/mitmproxy.py index e2cc321..f6ea742 100644 --- a/warcprox/mitmproxy.py +++ b/warcprox/mitmproxy.py @@ -172,8 +172,8 @@ class ProxyingRecordingHTTPResponse(http_client.HTTPResponse): self.msg['Via'] = via_header_value( self.msg.get('Via'), '%0.1f' % (self.version / 10.0)) if extra_response_headers: - rmeta = {"capture-metadata": extra_response_headers} - self.msg['Warcprox-Meta'] = json.dumps(rmeta, separators=',:') + for header, value in extra_response_headers.items(): + self.msg[header] = value for k,v in self.msg.items(): if k.lower() not in ( diff --git a/warcprox/warcproxy.py b/warcprox/warcproxy.py index ec613ab..d37e588 100644 --- a/warcprox/warcproxy.py +++ b/warcprox/warcproxy.py @@ -182,7 +182,8 @@ class WarcProxyHandler(warcprox.mitmproxy.MitmProxyHandler): extra_response_headers = {} if warcprox_meta and 'accept' in warcprox_meta and \ 'capture-metadata' in warcprox_meta['accept']: - extra_response_headers['timestamp'] = timestamp.strftime('%Y-%m-%dT%H:%M:%SZ') + rmeta = {'capture-metadata': {'timestamp': timestamp.strftime('%Y-%m-%dT%H:%M:%SZ')}} + extra_response_headers['Warcprox-Meta'] = json.dumps(rmeta, separators=',:') req, prox_rec_res = warcprox.mitmproxy.MitmProxyHandler._proxy_request( self, extra_response_headers=extra_response_headers)