で作業する場合壊れるようです。サーバは、それが完了したら、我々はIFRAMEを作成するとiframe内のすべての要求はクッキーを送信することが期待されているhttps://product.example.com/rest/v1/stuffのSet-Cookieは、我々は、クッキーとの奇妙な問題に直面しているのiframe
Set-Cookie: id=c50b72c0-0b3a-11e7-b356-002590812948;Version=1;Comment="ID";Domain=.example.com;Path=/;HttpOnly
のようにエンドポイントから以下を返します。ブラウザは、次の要求(のiframe REF)を行うと、いくつかのいずれかが
- 起こるクッキーが送信されなかっます
- クッキーは、ID = 9b639ea0-e800-11e6-b3ee-002590812948
- クッキーとして送られますID = 9b639ea0-e800-11e6-b3ee-002590812948として送られます。最初の要求が正しいクッキーを使用しない場合、ID = c50b72c0-0b3a-11e7-b356-002590812948
- クッキーがID = c50b72c0-0b3a-11e7-b356-002590812948 として
に送信される、次のセットが変化してもよいですそして、異なることを行う(約50 HTTPロードページの後に呼び出し、各やって4つの記載されている状態のいずれか)私たちは、それはクローム、サファリ、およびFirefoxで起こることがわかり
。
デバッグ:
これは、アプリケーションの問題かもしれないが、我々はクッキーを設定しているものをデバッグする方法を見つけるためには至っていません。クッキー状態(httpまたはjsから)に変更があった場合に通知を受けることができるブラウザはありますか?
Javascriptを:私たちは14を反応させるの使用
は、ここに問題のコードです
メイクネットワーク要求ここ
getUri(id)
.then((uri) => {
self.dispatch(uri.uri);
})
.catch((errorMessage) => {
self.actions.idFailures(errorMessage)
})
のgetURI
getUri(id) {
return new Promise(function(resolve, reject) {
let url = 'rest/stuff/' + id;
request
.get(url)
.set('Accept', 'application/json')
.end(function(err, result){
if(err || !result){
reject(Error(err.response.text));
}
else {
resolve(JSON.parse(result.text));
}
});
});
}で、
設定はiframe
if(this.state.uri) {
instance = <iframe src={this.state.uri} style={iFrameStyle}> </iframe>;
}
どのように私たちはあなたがコードを投稿していない場合は、間違ってやっているかを把握するために期待していますか? – Barmar
投稿したコードにCookieに関連するものは表示されません。 – Barmar
httpレスポンスはクッキーを設定しています – ekaqu