Neomerx\JsonApi\Http\Headers\RestrictiveHeadersChecker::checkContentTypeHeader PHP Метод

checkContentTypeHeader() защищенный Метод

protected checkContentTypeHeader ( Neomerx\JsonApi\Contracts\Http\Headers\HeaderParametersInterface $parameters ) : void
$parameters Neomerx\JsonApi\Contracts\Http\Headers\HeaderParametersInterface
Результат void
    protected function checkContentTypeHeader(HeaderParametersInterface $parameters)
    {
        // Do not allow specify more than 1 media type for input data. Otherwise which one is correct?
        if (count($parameters->getContentTypeHeader()->getMediaTypes()) > 1) {
            throw new E([], E::HTTP_CODE_BAD_REQUEST);
        }
        $this->codecMatcher->matchDecoder($parameters->getContentTypeHeader());
        // From spec: Servers MUST respond with a 415 Unsupported Media Type status code
        // if a request specifies the header Content-Type: application/vnd.api+json with
        // any media type parameters.
        // We return 415 if no match found for decoder (media type with or wo parameters)
        // If no decoders were configured for media types with parameters we return 415 anyway
        if ($this->codecMatcher->getDecoderHeaderMatchedType() === null) {
            throw new E([], E::HTTP_CODE_UNSUPPORTED_MEDIA_TYPE);
        }
    }