Skip to main content

@std/http@0.215.0

latest
Works with
It is unknown whether this package works with Browsers, Deno, Node.js, Cloudflare Workers, Bun
It is unknown whether this package works with Browsers
It is unknown whether this package works with Deno
It is unknown whether this package works with Node.js
It is unknown whether this package works with Cloudflare Workers
It is unknown whether this package works with Bun
JSR Score70%
Published2 years ago (0.215.0)
function ifNoneMatch
ifNoneMatch(
value: string | null,
etag: string | undefined
): boolean

A helper function that takes the value from the If-None-Match header and a calculated etag for the target entity and returns false if the etag for the entity matches the supplied value, otherwise true.

See MDN's If-None-Match article for more information on how to use this function.

import {
  calculate,
  ifNoneMatch,
} from "@std/http/etag";
import { assert } from "@std/assert/assert"

const body = "hello deno!";

Deno.serve(async (req) => {
  const ifNoneMatchValue = req.headers.get("if-none-match");
  const etag = await calculate(body);
  assert(etag);
  if (!ifNoneMatch(ifNoneMatchValue, etag)) {
    return new Response(null, { status: 304, headers: { etag } });
  } else {
    return new Response(body, { status: 200, headers: { etag } });
  }
});

Parameters

value: string | null
etag: string | undefined

Return Type

Report package

Please provide a reason for reporting this package. We will review your report and take appropriate action.

Please review the JSR usage policy before submitting a report.

Add Package

deno add jsr:@std/http

Import symbol

import { ifNoneMatch } from "@std/http/etag";
or

Import directly with a jsr specifier

import { ifNoneMatch } from "jsr:@std/http/etag";