मैं अपने वेब ऐप्स में प्रमाणीकरण और सत्र नियंत्रण के लिए कुकीज़ का उपयोग कर रहा हूं, और इसकी कार्यक्षमताओं के साथ सामग्री हूं।देशी मोबाइल ऐप्स के लिए कुकीज़ और जेडब्ल्यूटी के बीच महत्वपूर्ण अंतर
मुझे आईओएस ऐप डेवलपर द्वारा पेश किया गया था कि नई गर्म चीज जेडब्ल्यूटी (जेएसओएन वेब टोकन) है। उन्होंने मुझे बताया कि जेडब्ल्यूटी है देशी मोबाइल ऐप्स के लिए प्रमाणीकरण और सत्र करने के लिए, और विशिष्ट उदाहरण दिए बिना, उन्होंने सुझाव दिया कि आईओएस और एंड्रॉइड ऐप्स दोनों में कुकीज के साथ कई समस्याएं हैं।
तो मैंने जेडब्ल्यूटी को देखा, उदाहरण के लिए http://angular-tips.com/blog/2014/05/json-web-tokens-introduction/ और https://auth0.com/blog/2014/01/07/angularjs-authentication-with-cookies-vs-token/, और मैं यह देखने में असफल रहा कि कुकीज की तुलना में यह महत्वपूर्ण क्यों बेहतर है (या उससे भी अलग), और अधिक विशेष रूप से, यह देशी मोबाइल ऐप्स में बेहतर क्यों होता है। ऐसा लगता है कि, कम से कम आईओएस, कुकीज़ को ठीक से संभालता है (Persisting Cookies In An iOS Application?)।
तो मेरा सवाल यह है कि एक मूल मोबाइल ऐप जो सर्वर-साइड एपीआई के साथ इंटरैक्ट करता है, प्रमाणीकरण और सत्रों के लिए कुकीज़ पर जेडब्ल्यूटी का उपयोग करने के लिए विशिष्ट फायदे और संबंधित उपयोग के मामले क्या हैं? कृपया उन लोगों को हाइलाइट करें जो कुकीज़ बस नहीं कर सकती हैं या इससे भी बदतर होती हैं।
कम से कम एक महत्वपूर्ण अंतर है। आपको लोड बैलेंसर के पीछे बैठे ऑटो-स्केलिंग वेब-ऐप्स (सर्वर) पर विचार करना चाहिए। जब तक आपके पास कुछ ऐप-वाइड सत्र हैंडलिंग सेट नहीं है ("ग्लोबल" कोकी स्टोरेज ...) यह हो सकता है कि प्रमाणीकरण और कुछ पहले अनुरोध एक सर्वर पर जाएं और फिर दूसरा अनुरोध दूसरे सर्वर पर भेजा जाता है - बिना प्रमाणीकृत सत्र। इस स्थिति को दूर करने का एक तरीका जेडब्ल्यूटी है। –
@rokjarc, इसे इंगित करने के लिए धन्यवाद। मैं सत्र प्रबंधन के लिए एक केंद्रीय स्टोर के रूप में रेडिस का उपयोग कर रहा हूं, और यह आजकल एक आदर्श मानता है। लेकिन मैं आपकी बात देखता हूँ। – skyork
कुछ वेब ढांचे, जैसे कि मेरे अनुभव में रेल या प्ले, कुकी सत्र (कुकी में स्टोर एन्कोडेड सत्र डेटा) का उपयोग करें। इस तकनीक को केंद्रीय सत्र स्टोर की आवश्यकता नहीं है क्योंकि सत्र प्रत्येक अनुरोध के लिए कुकी से डीकोड किया जाता है (यह देखते हुए कि सभी सर्वर डिकोडिंग के लिए एक ही गुप्त कुंजी का उपयोग करते हैं)। यह जेडब्ल्यूटी और इमो बेहतर है क्योंकि ब्राउजर जैसे क्लाइंट को जेडब्ल्यूटी टोकन को बनाए रखना नहीं है। मैं मोबाइल तकनीक पर इस तकनीक को लागू करने के लिए शोध कर रहा हूं। – Khanetor