質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
Cookie

HTTPにおけるCookieとは、クライアントのウェブブラウザ上に保存された一時的なデータを指します。クライアント側のJavaScriptでも、サーバー側のHTTPヘッダーでもクッキーの読み書き・修正・削除が可能です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

解決済

cookie認証がconsole.logに反映されない

Iori
Iori

総合スコア48

Cookie

HTTPにおけるCookieとは、クライアントのウェブブラウザ上に保存された一時的なデータを指します。クライアント側のJavaScriptでも、サーバー側のHTTPヘッダーでもクッキーの読み書き・修正・削除が可能です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

1回答

0リアクション

1クリップ

309閲覧

投稿2022/09/26 14:14

前提

JavaScriptの入門書でプライバシーポリシー認証パネルを勉強しています。

実現したいこと

「認証する」ボタンが押されるとクッキーを保存し、「テスト用 cookie削除」ボタンが押されるとクッキーを削除するようにしたいです。

発生している問題・エラーメッセージ

Refused to apply style from 'http://localhost:4245/_common/css/style.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled. Failed to load resource: the server responded with a status of 404 (Not Found) Uncaught ReferenceError: Cookies is not defined at (index):44:15 Failed to load resource: the server responded with a status of 404 (Not Found) localhost/:1 Refused to apply style from 'http://localhost:4245/_common/css/style.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

画像バージョン
イメージ説明

該当のソースコード

自分が書いたコード

HTML

<!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>テンプレート</title> <link href="../../_common/images/favicon.ico" rel="shortcut icon"> <link href="https://fonts.googleapis.com/css?family=M+PLUS+1p:400,500" rel="stylesheet"> <link href="../../_common/css/style.css" rel="stylesheet"> <link rel="stylesheet" href="panel.css"> </head> <body> <header> <div class="container"> <h1>タイトル</h1> <h2>サブタイトル</h2> </div><!-- /.container --> </header> <main> <div class="container"> <section> <p><button id="testbtn">テスト用 cookie削除</button></p> </section> </div><!-- /.container --> </main> <footer> <div class="container"> <p>JavaScript Samples</p> </div><!-- /.container --> </footer> <div id="privacy-panel"> <p>当サイトではユーザーエクスペリエンス向上のためクッキーを使用しています。</p> <button id="agreebtn">承認する</button> </div> <script src="../../_common/scripts/js.cookie.js"></script> <script> 'use strict'; const agree = Cookies.get('cookie-agree'); // const panel = document.getElementById('privacy-panel'); if(agree === 'yes') { console.log('クッキーを確認しました'); } else { console.log('クッキーを確認できません'); document.getElementById('agreebtn').onclick = function() { Cookies.set('cookie-agree', 'yes', {expires: 7}); }; } //MEMO // Cookies.set('key', 'value'); // 14日後に消える // Cookies.set('key', 'value', {expires: 14}); // ユーザーの使用言語を日本語に指定 // Cookies.set('locale', 'ja-JP'); //クッキー削除 document.getElementById('testbtn').onclick = function() { Cookies.remove('cookie-agree'); }; </script> </body> </html>

お手本

HTML

<!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>5-03_cookie</title> <link href="../../_common/images/favicon.ico" rel="shortcut icon"> <link href="https://fonts.googleapis.com/css?family=M+PLUS+1p:400,500" rel="stylesheet"> <link href="../../_common/css/style.css" rel="stylesheet"> <link href="panel.css" rel="stylesheet"> </head> <body> <header> <div class="container"> <h1>プライバシーポリシー承認パネルを作る</h1> <h2>クッキーの読み・書き・削除</h2> </div><!-- /.container --> </header> <main> <div class="container"> <section> <p><button id="testbtn">テスト用 cookie削除</button></p> </section> </div><!-- /.container --> </main> <footer> <div class="container"> <p>JavaScript Samples</p> </div><!-- /.container --> </footer> <div id="privacy-panel"> <p>当サイトではユーザーエクスペリエンス向上のためクッキーを使用しています。また、匿名でアクセス状況のデータを収集しています。詳しい情報は当サイトのプライバシーポリシーをご覧ください。</p> <button id="agreebtn">承認する</button> </div> <script src="../../_common/scripts/js.cookie.js"></script> <script> 'use strict'; const agree = Cookies.get('cookie-agree'); if(agree === 'yes') { console.log('クッキーを確認しました'); } else { console.log('クッキーを確認できません'); document.getElementById('agreebtn').onclick = function() { Cookies.set('cookie-agree', 'yes', {expires: 7}); }; } // クッキー削除(テスト用) document.getElementById('testbtn').onclick = function() { Cookies.remove('cookie-agree'); }; </script> </body> </html>

試したこと

vscodeの比較機能でチェックしましたが、文字列・空白以外の違いはありませんでした。
イメージ説明

イメージ説明

補足情報(FW/ツールのバージョンなど)

本の案内通り、served.exeを使用しています。

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Cookie

HTTPにおけるCookieとは、クライアントのウェブブラウザ上に保存された一時的なデータを指します。クライアント側のJavaScriptでも、サーバー側のHTTPヘッダーでもクッキーの読み書き・修正・削除が可能です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。