0

私の質問は、Cookie がどのように機能するかです。この質問は、初めてページを読み込んだときに頭に浮かびました。

REQUEST HEADER
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Accept-Encoding: gzip, deflate, br
Accept-Language: en-GB,en;q=0.9,en-US;q=0.8
Cache-Control: max-age=0
Connection: keep-alive
Cookie: csrftoken=gsZxmbW4XUpE6YnaQhlrAx9JduyExVgzWEo4fXhcY4V3fbHWVtwf0msbDQDT5r43
Host: 127.0.0.1:8000
Upgrade-Insecure-Requests: 1

最初のリクエストが送信されたとき、すでに Cookie に csrftoken が含まれていました

シークレットウィンドウでも同じことを試しましたが、同じ結果が得られました。サーバーと通信せずに、ブラウザがすでにCookieを持っている方法

angular 7でdjangoに取り組んでいますが、問題はangularからリクエストを送信していることです

 this.http.post('http://127.0.0.1:8000/',data,  {observe : "response", withCredentials: true } )}

しかし、それに応じて、 setcookie で csrftoken を取得していません。

助けてください..... 1つの質問に2つの問題を追加して申し訳ありませんが、両方が間接的に関連しています

4

2 に答える 2

0

実際には、djangoが127.0.0.1で実行され、angularがlocalhost(任意のループバックアドレス)で実行されていたため、セキュリティ(CORS)の問題のために、ブラウザ(chrome)がリクエストでCookieを送信することもCookieを設定することも許可していませんでしたに応じて 。そのため、ブラウザで同じサイトをなしに変更するか、角度設定を変更して127.0.0.1でレンダリングするという2つのオプションがありました。

于 2019-07-24T12:36:29.510 に答える