3

拡張機能が Safari で機能しない (他のブラウザーでは機能する) 理由をデバッグしているときに、Safari ツールバー拡張機能で XmlHttpRequest を使用して任意の構成の HTTP ヘッダーを送信できることに気付きました。しかし、以前と同じ内容の「Cookie」という名前のヘッダーで同じことをしようとすると、送信されません。

では、Safari はリクエストで Cookie を送り返すことを制限していますか、それとも別のプロセスに従う必要がありますか? たとえば、これはセッション状態の永続性を必要とするアプリの機能をブロックするため、ちょっと不自由に思えます。代替プロセスがある場合、Apple は拡張機能でセッション状態を維持することを難しくしました (Web アプリまたは他のブラウザー拡張機能を適応させる際の余分な作業)。

Mac OS X 10.7.5 で Safari 5.1.7 と Charles プロキシを使用してテストしました。

4

1 に答える 1

1

同様の問題を抱えている他の人が見やすくするために、以前に自分の質問でコメントした、自分に合った解決策を投稿する必要があると考えました。

Safari拡張機能の場合、私にとってうまくいくのは、CookieとWebサイトデータをブロックしないようにブラウザーを設定することです. そのため、ユーザーは拡張機能を使用するためにそれを行う必要があります。コードの変更は必要ありません。しかし、それはクールではありません。

特定の手順はSafari > Preferences > Privacy > Cookies and website data: Always allow(少なくとも Mac OS Yosemite の Safari 10 では) です。「アクセスしたWebサイトから許可する」を試して、より制限的なオプションが機能するかどうかを確認することもできます.

于 2015-08-11T18:11:38.873 に答える