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

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

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

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

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

ASP

ASP(Active Server Pages) あるいはClassic ASP (ASP Classic)は、マイクロソフト社開発した動的なウェブページ製作に利用可能なサーバー側のスプリクトエンジンです。

解決済

Ajaxで呼び出したASPファイルでクッキーを設定したい

kkdk
kkdk

総合スコア1

Cookie

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

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

ASP

ASP(Active Server Pages) あるいはClassic ASP (ASP Classic)は、マイクロソフト社開発した動的なウェブページ製作に利用可能なサーバー側のスプリクトエンジンです。

1回答

0評価

1クリップ

2458閲覧

投稿2020/09/08 09:32

編集2020/09/08 11:41

問題

外部ドメインのaspファイルにAjax通信を行い、そこでクッキーの設定を行おうとしています。
aspファイルはエラーなく読み込むことができ、
Chromeのデベロッパーツールで確認したところSet-cookieも設定できています。
しかし実際にクッキーは保存されていない状態で、原因がわからず困っています。
何か設定が足りない、などあればご助言いただきたいです。

Ajax送信

Jquery

// https://exsample_a.comのファイル $.ajax({ url: 'https://exsample_b.com/set_cookie.asp?testid=123456' ,xhrFields: { withCredentials : true } ,type :'GET' ,success :function(){ //成功時の処理 } });

asp側の設定

Vbscript

// https://exsample_b.comのファイル Call Response.Addheader("Access-Control-Allow-Origin", "https://exsample_a.com") Call Response.Addheader("Access-Control-Allow-Credentials", "true") Call Response.Addheader("Access-Control-Allow-Headers","Origin,Authorization,Accept,X-Requested-With") Dim TestId TestId = Request.QueryString("testid") Call Response.AddHeader "Set-Cookie", "testcookie=TestID=" & TestId & "; Secure; SameSite=none"

set_cookie.aspをブラウザから直接開いた場合は正常にクッキーが保存できます。
ajaxで呼び出した場合にクッキーの書き込みができないようです。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

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

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

ockeghem

2020/09/08 10:11

『Chromeのデベロッパーツールで確認したところSet-cookieも設定できています。しかし実際にクッキーは保存されていない状態で』ということですが、レスポンスヘッダにはSet-Cookieヘッダはあるが、デベロッパーツールのApplicatinタブからStorage-Cookiesで確認すると保存されていない、という意味でしょうか。
ockeghem

2020/09/08 10:20

Chrome以外のIEやFirefoxだとどうなりますか?
kkdk

2020/09/08 10:40

>レスポンスヘッダにはSet-Cookieヘッダはあるが、デベロッパーツールのApplicatinタブからStorage-Cookiesで確認すると保存されていない、という意味でしょうか。 まさしくその通りです。 IEとFireFoxの場合はヘッダーだけでなくストレージの方にもクッキーが保存されていることが確認できました。

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

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

Cookie

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

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

ASP

ASP(Active Server Pages) あるいはClassic ASP (ASP Classic)は、マイクロソフト社開発した動的なウェブページ製作に利用可能なサーバー側のスプリクトエンジンです。