ホームページ >バックエンド開発 >PHPチュートリアル >Fineuploader は、サブドメイン間でファイルをアップロードする際の Cookie 損失の問題を解決します

Fineuploader は、サブドメイン間でファイルをアップロードする際の Cookie 損失の問題を解決します

巴扎黑
巴扎黑オリジナル
2016-11-10 09:49:501805ブラウズ

現在のプロジェクトでは、開発プロセス中に、ログイン Cookie によって設定されたドメインがルート ドメインの下に個別に配置され、ユーザーのログイン検出が行われます。がバックエンド コードで実行されているため、調べてみると、常に非ログイン ページにリダイレクトされることがわかりました。インターネット、私は

ネイティブAjaxリクエストメソッド:

var xhr = new XMLHttpRequest(); 
xhr.open("POST", "http://xxxx.com/demo/b/index.php", true); 
xhr.withCredentials = true; //支持跨域发送cookies
xhr.send();

jquery Ajaxポストメソッドリクエスト:


$.ajax({
type: "POST",
url: "http://xxx.com/api/test",
dataType: 'jsonp',
xhrFields: {
withCredentials: true
},
crossDomain: true,
success:function(){
},
error:function(){
}
})

サーバー側設定:
header("Access-Control-Allow-Credentials: true");
header( "Access-Control-Allow-Origin: http://www.xxx.com");

フロントエンドには Fineuploader が含まれるため、コード内でキーワード withCredentials を検索して、次に進みました。公式ドキュメントにアクセスして読んでください。cors設定があります http://docs.fineuploader.com/api/options.html#cors

設定行に次の設定を追加すればOKです

Jsコード

cors: {  
                allowXdr: true,// 此参数目前不知道有啥用  
                expected: true,  
                sendCredentials: true  
            }

修正後、問題は解決されました。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。