मैं() उप-डोमेन में ajax अनुरोध के माध्यम से प्रमाणीकरण :: चेक के साथ समस्या आ रही है .. परिदृश्य: 2 उप डोमेनLaravel CORS उपडोमेन सत्र
www.testing.dev
api.testing.dev
एकल प्रवेश/में उन दोनों के बीच सत्र .. laravel config/session.php मैंने 'domain' => ".testing.dev"
सेट किया है, और सब कुछ ठीक काम कर रहा है, मैं एक पेज में लॉगिन करने में सक्षम हूं और दूसरे पेज में भी लॉग इन करना जारी रखता हूं!
लेकिन जब मैं का उपयोग ajax वहाँ एक समस्या .. परिदृश्य है: api.testing.dev
में जा रहा है, मैं, फ़ायरबग के साथ प्रदर्शन js, जो कुछ भी
$.ajax({
url: 'http://api.testing.dev/who',
type: 'GET',
cache: false
});
api.stesting.dev/who
रिटर्न:
public function getWho(){
return var_dump(Auth::user());
}
प्रतिक्रिया मेरे खाते की जानकारी है! सभी सही ..
www.testing.dev
से मैं एक ही AJAX क्वेरी करता हूं, मुझे Auth :: चेक() वापस शून्य मिलती है। हालांकि मैं सामान्य प्रतिक्रिया है, तो क्रॉस डोमेन सेटअप के साथ कोई समस्या नहीं मिल .. यहाँ api.testing.dev
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: OPTIONS, POST, GET, PUT, DELETE');
header('Access-Control-Allow-Headers: *');
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Credentials: true');
वेबसाइट WAMP साथ स्थानीय होस्ट में चल रहा है के लिए मार्ग में मेरी हेडर हैं।
संपादित करें: प्रारंभिक लॉगिन के बाद, डिफ़ॉल्ट सत्र ड्राइवर 'driver' => 'file'
के साथ, app/storage/sessions
में एक फ़ाइल है। और अगर मैं एक सबडोमेन से दूसरे में जाता हूं, तो कोई अन्य फाइलें उत्पन्न नहीं होती हैं। हालांकि जब मैं एक सीओआरएस AJAX preform, हर बार एक नई फाइल उत्पन्न होता है ...
बिल्कुल वही समस्या का अनुभव करना। –
त्वरित प्रश्न, आप अपनी कुकीज़ का डोमेन कैसे सेट करते हैं? ऐप/config/session.php फ़ाइल में –
, 'डोमेन' को उचित रूप से सेट करें। (एक बहु उप-डोमेन साइट के लिए इसे ".site.com" पर सेट करें) – ActonDev