0
この問題は、サーバーにCookieを送信したいときに発生しました。 アイデアは、ユーザーがログインしているかどうかをチェックすることです。
このコード
isLogin(): Promise<any> {
let headers = new Headers;
headers.append('Cookies', 'autologin=abcdef;'); //this the set cookie. but not set when i check in mozilla network tap
return this.http.get(this.BASEURL + 'api/authentication/check', { headers: headers })
.toPromise()
.then(res => {
console.log(res);
})
.catch(err => console.log(err));
}
、これは要求ヘッダです。
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Access-Control-Request-Method: GET
Access-Control-Request-Headers: set-cookie
Origin: http://localhost:8100
このサーバコード
public function check()
{
if ($this->auth->loggedin())
{
$this->output
->set_status_header(200)
->set_content_type('application/json')
->set_output(json_encode($this->session->userdata()));
} else {
$this->output
->set_status_header(400)
->set_content_type('application/json')
->set_output(json_encode(['status' => FALSE]));
}
}
参照してください?リクエストにクッキーはありません。助けて。これは私の頭痛をつかまえます.. XD
効果なし。 jsonというサーバーからの応答。とクッキー。
リクエストヘッダーが最初のものと同じですが、まだ含まれていないクッキー – Cecep
うーん、Cookieの名前を 'Test-Header'に変更すると、 ? – Ivaro18
私は試して何も得ていません 私のコンソールでこのエラーが表示されます: 'Cross-Origin Request Blocked:....'これはリクエストクッキーが設定できなかった問題ですか? – Cecep