27 lines
		
	
	
		
			954 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			27 lines
		
	
	
		
			954 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								const handler = {
							 | 
						||
| 
								 | 
							
								    scheme: "http",
							 | 
						||
| 
								 | 
							
								    domainHost: true,
							 | 
						||
| 
								 | 
							
								    parse: function (components, options) {
							 | 
						||
| 
								 | 
							
								        //report missing host
							 | 
						||
| 
								 | 
							
								        if (!components.host) {
							 | 
						||
| 
								 | 
							
								            components.error = components.error || "HTTP URIs must have a host.";
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        return components;
							 | 
						||
| 
								 | 
							
								    },
							 | 
						||
| 
								 | 
							
								    serialize: function (components, options) {
							 | 
						||
| 
								 | 
							
								        //normalize the default port
							 | 
						||
| 
								 | 
							
								        if (components.port === (String(components.scheme).toLowerCase() !== "https" ? 80 : 443) || components.port === "") {
							 | 
						||
| 
								 | 
							
								            components.port = undefined;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        //normalize the empty path
							 | 
						||
| 
								 | 
							
								        if (!components.path) {
							 | 
						||
| 
								 | 
							
								            components.path = "/";
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        //NOTE: We do not parse query strings for HTTP URIs
							 | 
						||
| 
								 | 
							
								        //as WWW Form Url Encoded query strings are part of the HTML4+ spec,
							 | 
						||
| 
								 | 
							
								        //and not the HTTP spec.
							 | 
						||
| 
								 | 
							
								        return components;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								export default handler;
							 | 
						||
| 
								 | 
							
								//# sourceMappingURL=http.js.map
							 |