Add fallback status messages for HTTP/2 (Closes #2273) (#2275)

This commit is contained in:
Gregory Schier
2020-06-10 11:16:09 -07:00
committed by GitHub
parent 53c21fba37
commit 6b4f009a67
2 changed files with 84 additions and 2 deletions

View File

@@ -369,3 +369,84 @@ export const RESPONSE_CODE_DESCRIPTIONS = {
510: 'Further extensions to the request are required for the server to fulfill it.',
511: 'The 511 status code indicates that the client needs to authenticate to gain network access.',
};
export const RESPONSE_CODE_REASONS = {
// Special
[STATUS_CODE_PLUGIN_ERROR]: 'Plugin Error',
// 100s
100: 'Continue',
101: 'Switching Protocols',
// 200s
200: 'OK',
201: 'Created',
202: 'Accepted',
203: 'Non-Authoritative Information',
204: 'No Content',
205: 'Reset Content',
206: 'Partial Content',
207: 'Multi-Status',
208: 'Already Reported',
226: 'IM Used',
// 300s
300: 'Multiple Choices',
301: 'Moved Permanently',
302: 'Found',
303: 'See Other',
304: 'Not Modified',
305: 'Use Proxy',
306: 'Switch Proxy',
307: 'Temporary Redirect',
308: 'Permanent Redirect',
// 400s
400: 'Bad Request',
401: 'Unauthorized',
402: 'Payment Required',
403: 'Forbidden',
404: 'Not Found',
405: 'Method Not Allowed',
406: 'Not Acceptable',
407: 'Proxy Authentication Required',
408: 'Request Timeout',
409: 'Conflict',
410: 'Gone',
411: 'Length Required',
412: 'Precondition Failed',
413: 'Payload Too Large',
414: 'URI Too Long',
415: 'Unsupported Media Type',
416: 'Range Not Satisfiable',
417: 'Expectation Failed',
418: "I'm a Teapot",
421: 'Misdirected Request',
422: 'Unprocessable Entity',
423: 'Locked',
424: 'Failed Dependency',
425: 'Too Early',
426: 'Upgrade Required',
428: 'Precondition Required',
429: 'Too Many Requests',
431: 'Request Header Fields Too Large',
451: 'Unavailable For Legal Reasons',
// 500s
500: 'Internal Server Error',
501: 'Not Implemented',
502: 'Bad Gateway',
503: 'Service Unavailable',
504: 'Gateway Timeout',
505: 'HTTP Version Not Supported',
506: 'Variant Also Negotiates',
507: 'Insufficient Storage',
508: 'Loop Detected',
510: 'Not Extended',
511: 'Network Authentication Required',
};

View File

@@ -1,7 +1,7 @@
// @flow
import * as React from 'react';
import classnames from 'classnames';
import { RESPONSE_CODE_DESCRIPTIONS } from '../../../common/constants';
import { RESPONSE_CODE_DESCRIPTIONS, RESPONSE_CODE_REASONS } from '../../../common/constants';
import Tooltip from '../tooltip';
type Props = {
@@ -52,7 +52,8 @@ class StatusTag extends React.PureComponent<Props> {
return (
<div className={classnames('tag', colorClass, { 'tag--small': small })}>
<Tooltip message={description} position="bottom" delay={tooltipDelay}>
<strong>{statusCodeToDisplay}</strong> {statusMessage}
<strong>{statusCodeToDisplay}</strong>{' '}
{statusMessage || RESPONSE_CODE_REASONS[statusCode]}
</Tooltip>
</div>
);