validate-header-name.js 385 B

1234567891011
  1. 'use strict';
  2. const {ERR_INVALID_HTTP_TOKEN} = require('./errors.js');
  3. const isRequestPseudoHeader = require('./is-request-pseudo-header.js');
  4. const isValidHttpToken = /^[\^`\-\w!#$%&*+.|~]+$/;
  5. module.exports = name => {
  6. if (typeof name !== 'string' || (!isValidHttpToken.test(name) && !isRequestPseudoHeader(name))) {
  7. throw new ERR_INVALID_HTTP_TOKEN('Header name', name);
  8. }
  9. };