一緒に働いている会社へのセッション転送の一環として、別のサイトに「投稿」するときに問題が発生します。彼らは、クエリ文字列にセッショントークンを含む「投稿」リクエストを介してサイトに移動するように私たちに依頼しました (はい、リクエストに本文はありません)。
これは、Post リクエストに使用しているコードです。
navigateByPost = function(path, parameters)
{
var form = $('<form />');
form.attr("method", "post");
form.attr("action", path);
parameters && $.each(parameters, function (key, value)
{
var field = $('<input />');
field.attr("type", "hidden");
field.attr("name", key);
field.attr("value", value);
form.append(field);
});
$(document.body).append(form);
form.submit();
}
私はそれを次のように呼んでいます:
navigateByPost('http://other.site/login/?parameter1=sessiontokenhere');
ほとんどの場合、これは正しく機能しますが、完全にランダムな間隔で、リクエストがキャンセルされ、ナビゲーションがまったく行われないことがあります。これは、ナビゲーションが失敗したときに chrome dev ツールに表示されるものです。
Firefox でチェックインしたところ、問題は発生していないようで、実際の問題は何なのか途方に暮れています。1ミリ秒でそこに到達して拒否される方法はないため、相手側では問題にならないことを私は知っています。ブラウザに何かあるはずですが、わかりません。
みんな助けてください、私は頭をぶつけるために机を使い果たしています!