@@ -1048,6 +1048,11 @@ def _main(args=None):
10481048 '(default: %(default)s)' )
10491049 parser .add_argument ('--cors' , action = 'store_true' ,
10501050 help = 'Enable Access-Control-Allow-Origin: * header' )
1051+ parser .add_argument ('-H' , '--header' , nargs = 2 , action = 'append' ,
1052+ # metavar='HEADER VALUE',
1053+ metavar = ('HEADER' , 'VALUE' ),
1054+ help = 'Add a custom response header '
1055+ '(can be used multiple times)' )
10511056 args = parser .parse_args (args )
10521057
10531058 if not args .tls_cert and args .tls_key :
@@ -1085,7 +1090,12 @@ class HTTPSDualStackServer(DualStackServerMixin, ThreadingHTTPSServer):
10851090 pass
10861091
10871092 ServerClass = HTTPSDualStackServer if args .tls_cert else HTTPDualStackServer
1088- response_headers = {'Access-Control-Allow-Origin' : '*' } if args .cors else None
1093+ response_headers = {}
1094+ if args .cors :
1095+ response_headers ['Access-Control-Allow-Origin' ] = '*'
1096+ for header , value in args .header or []:
1097+ response_headers [header ] = value
1098+
10891099
10901100 test (
10911101 HandlerClass = SimpleHTTPRequestHandler ,
@@ -1096,7 +1106,7 @@ class HTTPSDualStackServer(DualStackServerMixin, ThreadingHTTPSServer):
10961106 tls_cert = args .tls_cert ,
10971107 tls_key = args .tls_key ,
10981108 tls_password = tls_key_password ,
1099- response_headers = response_headers
1109+ response_headers = response_headers or None
11001110 )
11011111
11021112
0 commit comments