Skip to main content
Go to Latest
function parseMediaType
import { parseMediaType } from "https://deno.land/std@0.144.0/media_types/mod.ts";

Parses the media type and any optional parameters, per RFC 1521. Media types are the values in Content-Type and Content-Disposition headers. On success the function returns a tuple where the first element is the media type and the second element is the optional parameters or undefined if there are none.

The function will throw if the parsed value is invalid.

The returned media type will be normalized to be lower case, and returned params keys will be normalized to lower case, but preserves the casing of the value.

Examples

import { parseMediaType } from "https://deno.land/std@0.144.0/media_types/mod.ts";
import { assertEquals } from "https://deno.land/std@0.144.0/testing/asserts.ts";

assertEquals(
  parseMediaType("application/JSON"),
  [
    "application/json",
    undefined
  ]
);

assertEquals(
  parseMediaType("text/html; charset=UTF-8"),
  [
    "application/json",
    { charset: "UTF-8" },
  ]
);

Parameters

v: string

Returns

[string, Record<string, string> | undefined]