mirror of
https://github.com/d0zingcat/cors-anywhere.git
synced 2026-05-13 23:16:51 +00:00
Avoid duplicate Access-Control-Expose-Headers
This commit is contained in:
@@ -51,8 +51,9 @@ function withCORS(headers, request) {
|
||||
}
|
||||
|
||||
var exposedHeaders = headers['access-control-expose-headers'] || '';
|
||||
if (exposedHeaders) exposedHeaders += ',';
|
||||
exposedHeaders += 'location,x-request-url';
|
||||
if (!/,\s*location\s*,/i.test(','+exposedHeaders+',')) exposedHeaders += ',location';
|
||||
if (!/,\s*x-request-url\s*,/i.test(','+exposedHeaders+',')) exposedHeaders += ',x-request-url';
|
||||
if (exposedHeaders.charAt(0) === ',') exposedHeaders = exposedHeaders.substr(1);
|
||||
headers['access-control-expose-headers'] = exposedHeaders;
|
||||
|
||||
return headers;
|
||||
@@ -130,7 +131,7 @@ var getHandler = exports.getHandler = function(options) {
|
||||
} else {
|
||||
// Actual request. First, extract the desired URL from the request:
|
||||
var full_url, host, hostname, port, path, match;
|
||||
match = req.url.match(/^\/(?:(https?:)?\/\/)?(([^\/?]+?)(?::(\d{0,5})(?=[\/?]|$))?)([\/?][\S\s]*|$)/i);
|
||||
match = req.url.match(/^\/?(?:(https?:)?\/\/)?(([^\/?]+?)(?::(\d{0,5})(?=[\/?]|$))?)([\/?][\S\s]*|$)/i);
|
||||
// ^^^^^^^ ^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^^
|
||||
// 1:protocol 3:hostname 4:port 5:path + query string
|
||||
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Reference in New Issue
Block a user