संक्षिप्त उत्तर
- आप अपने मानक उपयोगकर्ता तालिका करने के लिए सामाजिक लॉगिन उपयोगकर्ता लिंक और (जेडब्ल्यूटी) टोकन जेनरेट के रूप में आप पहले से ही
- सामाजिक लॉगिन कर रहे हैं हमेशा एक आईडी की पहचान वापस लौटाना होगा सामाजिक पर उपयोगकर्ता। एक बाहरी तालिका में, आपको की user_id मुख्य उपयोगकर्ताओं तालिका
विस्तृत उत्तर
के साथ एक साथ, सामाजिक इस्तेमाल किया और social_id की दुकान के क्रम में एक बेहतर करने के लिए शुरू से ही शुरू करते हैं सभी मुद्दों को देखें और अपने संदेह के सभी पहलू को साफ़ करें।
बेसिक उपयोगकर्ता तालिका
आमतौर पर आप एक उपयोगकर्ता तालिका इस तरह से (सरलीकृत)
- user_id में संरचित है
- लॉगिन (ईमेल)
- पासवर्ड
- jwt_token
जब उपयोगकर्ता लॉगिन , आप jwt_token फ़ील्ड को अपडेट करने जा रहे हैं और इसे अपने एपीआई का उपभोग करने के लिए उपयोगकर्ता को वापस कर देंगे।
को लागू सामाजिक लॉगिन
एक अच्छा दृष्टिकोण सामाजिक लॉगिन जोड़ने के लिए नया social_logins तालिका इस प्रकार संरचित बनाने के लिए है (सरलीकृत)
- सामाजिक
- social_id
- user_id
एक बार जब आप उपयोगकर्ता को "सामाजिक लॉगिन" करते हैं, तो आपको डेटा से एक सूची मिलती है सीअल नेटवर्क खुद। ध्यान दें कि उपयोगकर्ता निजी ईमेल पते (उदा। फेसबुक से पूर्व) को पुनर्प्राप्त करने की अनुमति नहीं दे सकते हैं, भले ही आप स्पष्ट रूप से इसके लिए पूछ रहे हों।
सबसे पहले आपको यह करना है कि सामाजिक ने आपको उपयोगकर्ता का ईमेल पता वापस कर दिया है या नहीं।
- एक ईमेल लौटे हैं, तो आपके उपयोगकर्ताओं तालिका में उस ईमेल पते के साथ एक उपयोगकर्ता के लिए देखने के लिए और उपयोगकर्ता के साथ एक रिश्ता बनाने user_id क्षेत्र
- का उपयोग कर ईमेल खाली है, तो "social_logins" तालिका में एक रिकॉर्ड बनाने के , आप एक "नकली" मेल पता बना उपयोगकर्ता तालिका में एक नया उपयोगकर्ता बनाना होगा (एक मानक विधि के साथ - यादृच्छिक नहीं) और फिर अपने social_login रिकॉर्ड बनाने
डबल उपयोगकर्ताओं (अलग ईमेल पते) बनाने से बचने के लिए , मैं हमेशा उपयोगकर्ता से अपने ईमेल पते की पुष्टि करने के लिए कहता हूं: इस सरल प्रश्न के साथ आप पिछली चेक स्थगित कर सकते हैं और डबल उपयोगकर्ताओं की मात्रा को कम करें। इसलिए, यदि सामाजिक लॉगिन आपको ईमेल पता नहीं लौटा रहा है, तो आप केवल एक खाली फ़ील्ड दिखाते हैं जो उपयोगकर्ताओं को अपने ईमेल पते से भरने के लिए कहता है जिसका उपयोग आप उपयोगकर्ता तालिका में किसी उपयोगकर्ता को देखने के लिए करेंगे। यदि इसके बजाय आपको यह मिल गया है, तो बस उपयोगकर्ता को एक ही फ़ील्ड भरें और उसे ईमेल पते की पुष्टि करने के लिए कहें या उसे बदल दें यदि वह किसी अन्य पते का उपयोग करना पसंद करता है या यदि वह पहले से ही आपके ऐप में किसी अन्य ईमेल पते से पंजीकृत है।
स्रोत
2017-02-28 16:09:50
द्वारा लॉग इन किया गया है, तो सामाजिक लॉगिन केवल यह सत्यापित करने के लिए है कि कौन प्रमाणित है। उस विशेष उपयोगकर्ता के लिए आपके डीबी में अभी भी एक उपयोगकर्ता रिकॉर्ड होगा। तो लॉगिन करने के बाद आप जेडब्ल्यूटी को उसी तरह बना देंगे जैसा आप हमेशा करते हैं। ईमेल पता नहीं देने के बारे में आप किस मंच से चिंतित हैं? बस प्रत्येक सेवा के बारे में कुछ प्रकार की उपयोगकर्ता आईडी भी होगी, इसलिए आपकी उपयोगकर्ता तालिका में 'facebook_id'' twitter_id' आदि जैसे फ़ील्ड हो सकते हैं ... – Pitchinnate
अधिकांश सामाजिक प्लेटफॉर्म आपको ईमेल पता प्रदान करते हैं (ट्विटर को छोड़कर मैं विश्वास करता हूं)। मुझे लगता है कि आप वेब ऑब्जेक्ट में सफल राउंडट्रिप के बाद अपने ऐप पर रीडायरेक्ट कर सकते हैं। –
@logeeks क्या आपको अपने प्रश्न का उत्तर मिला? –