INNER CODE UNIT · TypeScript

handleQuestionById

harvard-edge/cs249r_book · interviews/staffml-vault-worker/src/index.ts:253

async function handleQuestionById(env: Env, req: Request, id: string): Promise<Response> {
  const origin = req.headers.get("Origin");
  const row = await env.DB
    .prepare("SELECT * FROM questions WHERE id = ?")
    .bind(id)
    .first<QuestionRow>();
  if (!row) {
    return json({ error: "not-found", id }, { status: 404, headers: corsHeaders(env, origin) });
  }
  const manifest = await getManifest(env);
  const etag = `"${manifest.release_id}:q:${row.content_hash}"`;
  if (req.headers.get("If-None-Match") === etag) {
    return new Response(null, {
      status: 304,
      headers: { ETag: etag, ...corsHeaders(env, origin) },
    });
  }
  return json(row, {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…