Avatar ·

Go में प्रमाणीकरण (Authentication) को सही तरीके से कैसे व्यवस्थित करें? (JWT, सत्र, मिडलवेयर)

सभी को नमस्ते! मैं एक शुरुआती Go डेवलपर हूँ, अपना पहला REST API शुद्ध Go में (Gin या Echo जैसे फ्रेमवर्क के बिना) लिख रहा हूँ। मैं प्रमाणीकरण के सवाल पर अटक गया हूँ। मैंने बहुत सारे लेख पढ़े, लेकिन हर जगह अलग-अलग दृष्टिकोण सुझाए गए हैं: कोई JWT का उपयोग करता है, कोई कुकीज़ के साथ सत्र का, कोई तीसरे पक्ष की सेवाओं के माध्यम से OAuth2 का। मैं पूरी तरह से भ्रमित हो गया हूँ।\n\nमेरा कार्य: नोट्स के लिए एक सरल API बनाना है। उपयोगकर्ता रजिस्टर करता है, लॉगिन करता है, टोकन प्राप्त करता है और फिर संरक्षित एंडपॉइंट्स तक पहुँचने के लिए इसका उपयोग करता है। अभी तक मैंने हैंडलर में पासवर्ड जाँचने के लिए ऐसा प्रारंभिक कोड लिखा है:\n\n```go\nfunc loginHandler(w http.ResponseWriter, r *http.Request) {\n // ... लॉगिन और पासवर्ड के साथ JSON पार्स करना\n user, err := findUserByEmail(email)\n if err != nil || !checkPasswordHash(password, user.Hash) {\n http.Error(w, "