{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreihbiugulal7mxvru7k5lslgoahpafxy256f6isq2pu6652hrxdpsu",
    "uri": "at://did:plc:hzgu7qyp34ofph3btawzwyw4/app.bsky.feed.post/3mesx7cal6l42"
  },
  "coverImage": {
    "$type": "blob",
    "ref": {
      "$link": "bafkreiagpdzqlufh6auhyxmdxbum32toav6uiiwjjm6pjeq6gcadya72ni"
    },
    "mimeType": "image/png",
    "size": 67526
  },
  "path": "/akito_tsukahara/articles/1d15cb875b0f82",
  "publishedAt": "2026-02-12T14:39:48.000Z",
  "site": "https://zenn.dev",
  "textContent": "1. はじめに\n普段の開発でReactやVue、Svelteを使っていると、XSS対策は「フレームワークがよしなにやってくれるもの」という感覚があります。実際、どのフレームワークもデフォルトで自動エスケープを実装しており、基本的なXSSは防いでくれます。\nでは、その裏側で具体的に何が行われているのか、気になったことはないでしょうか。前回の記事ではLaravelのCSRF対策の内部実装を追いましたが、今回はフロントエンドフレームワークのセキュリティ実装を覗いてみることにしました。\n調べてみると、同じ「XSSを防ぐ」という目的でも、フレームワークごとにアプローチが違うことに気づきました。...",
  "title": "React, Vue, Svelteの「危険なHTML挿入」と「javascript: URL」の実装を読み比べてみた"
}