𝟱 𝗖𝗼𝗼𝗸𝗶𝗲 𝗧𝗿𝗶𝗰𝗸𝘀 𝗳𝗼𝗿 𝗗𝗲𝗯𝘂𝗴𝗴𝗶𝗻𝗴 𝗔𝘂𝘁𝗵 𝗜𝘀𝘀𝘂𝗲𝘀
ವೆಬ್ ಆಪ್ಗಳಲ್ಲಿ ಅಥೆಂಟಿಕೇಶನ್ (authentication) ಅನ್ನು ಡಿಬಗ್ ಮಾಡುವುದು ನಿಧಾನಗತಿಯ ಪ್ರಕ್ರಿಯೆ. ವಿವಿಧ ಬಳಕೆದಾರರ ಪ್ರಕಾರಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ನೀವು ಹೊಸ ಖಾತೆಗಳನ್ನು ರಚಿಸುವಲ್ಲಿ ಅಥವಾ ಎಲ್ಲಾ ಕುಕೀಗಳನ್ನು ಅಳಿಸುವಲ್ಲಿ ಆಗಾಗ್ಗೆ ಸಮಯ ವ್ಯರ್ಥ ಮಾಡಬಹುದು.
ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಮುಟ್ಟದೆಯೇ ನೀವು ಯಾವುದೇ ಸ್ಥಿತಿಯನ್ನು (state) ಪರೀಕ್ಷಿಸಬಹುದು. ಕುಕೀಗಳನ್ನು ನೇರವಾಗಿ ನಿರ್ವಹಿಸಲು ಈ ಐದು ತಂತ್ರಗಳನ್ನು ಬಳಸಿ.
- ಎಲ್ಲವನ್ನೂ ಅಳಿಸುವ ಬದಲು ನಿರ್ದಿಷ್ಟ ಕುಕೀಗಳನ್ನು ಗುರಿಯಾಗಿಸಿ
ಎಲ್ಲಾ ಕುಕೀಗಳನ್ನು ಅಳಿಸುವುದರಿಂದ ನಿಮ್ಮ ડેವ್ ಸರ್ವರ್ ಸೆಷನ್ (dev server session), ಲೋಕಲ್ ಸ್ಟೋರೇಜ್ ಮತ್ತು Stripe ಟೆಸ್ಟ್ ಮೋಡ್ಗಳು ನಾಶವಾಗುತ್ತವೆ. ಬದಲಾಗಿ, ಕೇವಲ ಅಥೆನ್ (auth) ಕುಕೀಯನ್ನು ಮಾತ್ರ ಅಳಿಸಿ.
ಸಾಮಾನ್ಯ ಹೆಸರುಗಳು:
- session
- sid
- auth_token
- _session_id
DevTools ನಲ್ಲಿ, Application > Cookies > [ನಿಮ್ಮ ಡೊಮೇನ್] ಗೆ ಹೋಗಿ. ಸೆಷನ್ ಕುಕೀ ಮೇಲೆ ರೈಟ್-ಕ್ಲಿಕ್ ಮಾಡಿ ಮತ್ತು Delete ಆಯ್ಕೆಮಾಡಿ. ಇದು ನಿಮ್ಮ ಇತರ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಹಾಗೆಯೇ ಉಳಿಸಿಕೊಂಡು, ಬಳಕೆದಾರರ ಸ್ಥಿತಿಯನ್ನು ಲಾಗ್-ಔಟ್ (logged-out) ಸ್ಥಿತಿಗೆ ಮರುಹೊಂದಿಸುತ್ತದೆ.
- ಆನ್ಬೋರ್ಡಿಂಗ್ ಫ್ಲಾಗ್ಗಳನ್ನು (onboarding flags) ಅಳಿಸುವ ಮೂಲಕ ಹೊಸ ಬಳಕೆದಾರರನ್ನು ಅನುಕರಿಸಬಹುದು
ಬಳಕೆದಾರರು ಸೆಟಪ್ ಪೂರ್ಣಗೊಳಿಸಿದ್ದಾರೆಯೇ ಎಂದು ಪತ್ತೆಹಚ್ಚಲು ಆಪ್ಗಳು ಕುಕೀಗಳನ್ನು ಬಳಸುತ್ತವೆ. onboarding_complete ಅಥವಾ first_visit ನಂತಹ ಹೆಸರುಗಳನ್ನು ಹುಡುಕಿ.
ಹೊಸ ಬಳಕೆದಾರರ ಹರಿವನ್ನು (user flow) ಪರೀಕ್ಷಿಸಲು:
- ನಿಮ್ಮ ಪ್ರಸ್ತುತ ಕುಕೀಗಳನ್ನು ಎಕ್ಸ್ಪೋರ್ಟ್ (Export) ಮಾಡಿ.
- ಆನ್ಬೋರ್ಡಿಂಗ್ ಫ್ಲಾಗ್ ಅನ್ನು ಅಳಿಸಿ.
- ಪುಟವನ್ನು ರಿಲೋಡ್ ಮಾಡಿ.
ಇದು ಹೊಸ ಖಾತೆಯಿಲ್ಲದೆ ಪ್ರಗತಿಪರ UI ಶಾಖೆಗಳನ್ನು (progressive UI branches) ಪರೀಕ್ಷಿಸಲು ನಿಮಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.
- ಸ್ನ್ಯಾಪ್ಶಾಟ್ಗಳನ್ನು ಬಳಸಿ 30 ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಬಳಕೆದಾರರ ಪಾತ್ರಗಳನ್ನು ಬದಲಾಯಿಸಿ
ನಿಮ್ಮ ಆಪ್ನಲ್ಲಿ Admin ಅಥವಾ Guest ನಂತಹ ವಿಭಿನ್ನ ಪಾತ್ರಗಳಿದ್ದರೆ, ಮ್ಯಾನುಯಲ್ ಆಗಿ ಲಾಗ್ ಇನ್ ಮತ್ತು ಲಾಗ್ ಔಟ್ ಮಾಡಬೇಡಿ. ಕುಕೀ ಸ್ನ್ಯಾಪ್ಶಾಟ್ಗಳನ್ನು ಬಳಸಿ.
- Admin ಆಗಿ ಲಾಗ್ ಇನ್ ಮಾಡಿ. ಕುಕೀಗಳನ್ನು admin-session.json ಆಗಿ ಎಕ್ಸ್ಪೋರ್ಟ್ ಮಾಡಿ.
- Regular User ಆಗಿ ಲಾಗ್ ಇನ್ ಮಾಡಿ. ಅವುಗಳನ್ನು user-session.json ಆಗಿ ಎಕ್ಸ್ಪೋರ್ಟ್ ಮಾಡಿ.
- ಪಾತ್ರಗಳನ್ನು ಬದಲಾಯಿಸಲು, ಕೇವಲ JSON ಫೈಲ್ ಅನ್ನು ಇಂಪೋರ್ಟ್ ಮಾಡಿ ಮತ್ತು ರಿಲೋಡ್ ಮಾಡಿ.
ಸರ್ವರ್ ಸೆಷನ್ ಟೋಕನ್ ಅನ್ನು ನಂಬುತ್ತದೆ. ನೀವು ಈಗಾಗಲೇ ರಚಿಸಿರುವ ಮಾನ್ಯವಾದ ಸೆಷನ್ಗಳನ್ನು ಬಳಸುತ್ತಿದ್ದೀರಿ. ಈ JSON ಫೈಲ್ಗಳನ್ನು ಲೋಕಲ್ ಆಗಿ ಇರಿಸಿ. ಇವುಗಳಲ್ಲಿ ಸೂಕ್ಷ್ಮವಾದ ಸೆಷನ್ ಟೋಕನ್ಗಳು ಇರುತ್ತವೆ.
- ಅವಧಿ ಮುಗಿದ ಸೆಷನ್ಗಳನ್ನು ತಕ್ಷಣವೇ ಪರೀಕ್ಷಿಸಿ
ಸೆಷನ್ ಮುಕ್ತಾಯಗೊಳ್ಳಲು ಗಂಟೆಗಟ್ಟಲೆ ಕಾಯಬೇಡಿ. ಎಕ್ಸ್ಪೈರಿ ದಿನಾಂಕವನ್ನು (expiry date) ಮ್ಯಾನುಯಲ್ ಆಗಿ ಬದಲಾಯಿಸಿ.
DevTools ನಲ್ಲಿ, ನಿಮ್ಮ ಸೆಷನ್ ಕುಕೀಗೆ ಸಂಬಂಧಿಸಿದ Expires ಕಾಲಂ ಮೇಲೆ ಡಬಲ್-ಕ್ಲಿಕ್ ಮಾಡಿ. ಅದನ್ನು ಹಿಂದಿನ ದಿನಾಂಕಕ್ಕೆ ಹೊಂದಿಸಿ. ಪುಟವನ್ನು ರಿಲೋಡ್ ಮಾಡಿ. ಸೆಷನ್ ಟೈಮ್ ಔಟ್ (time out) ಆದಾಗ ಏನಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ನೀವು ನಿಖರವಾಗಿ ನೋಡಬಹುದು.
- ಲಾಗಿನ್ ರಿಡೈರೆಕ್ಟ್ ಲೂಪ್ಗಳನ್ನು ಸರಿಪಡಿಸಿ
ಹಳೆಯ ಅಥವಾ ತಪ್ಪಾದ (malformed) ಕುಕೀ ಕಾರಣದಿಂದಾಗಿ ಲೂಪ್ಗಳು ಹೆಚ್ಚಾಗಿ ಸಂಭವಿಸುತ್ತವೆ. ಸೆಷನ್ ಅಸ್ತಿತ್ವದಲ್ಲಿರುತ್ತದೆ ಆದರೆ ಸರ್ವರ್ ಅದನ್ನು ತಿರಸ್ಕರಿಸುತ್ತದೆ.
ಕಾರಣವನ್ನು ಕಂಡುಹಿಡಿಯಲು:
- ಎಲ್ಲಾ ಅಥೆನ್ (auth) ಸಂಬಂಧಿತ ಕುಕೀಗಳನ್ನು ಗುರುತಿಸಿ.
- ಅವುಗಳನ್ನು ಒಂದೊಂದಾಗಿ ಅಳಿಸಿ.
- ಪ್ರತಿ ಬಾರಿ ಅಳಿಸಿದ ನಂತರ ಪುಟವನ್ನು ರಿಲೋಡ್ ಮಾಡಿ.
ಲೂಪ್ ನಿಂತ ಕ್ಷಣದಲ್ಲೇ, ನೀವು ಕೆಟ್ಟ ಕುಕೀಯನ್ನು ಪತ್ತೆಹಚ್ಚಿದ್ದೀರಿ ಎಂದರ್ಥ. ಇದು ಸಮಸ್ಯೆ ಕೆಟ್ಟ ಟೋಕನ್ ಆಗಿದೆಯೇ ಅಥವಾ ತಪ್ಪಾದ ಕುಕೀ ಡೊಮೇನ್ ಆಗಿದೆಯೇ ಎಂದು ಗುರುತಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
DevTools ಮತ್ತು CookieJar ನಂತಹ ಎಕ್ಸ್ಟೆನ್ಶನ್ಗಳು ಬ್ರೌಸರ್ ಮಟ್ಟದಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದರಿಂದ, ಈ ವಿಧಾನಗಳು HttpOnly ಕುಕೀಗಳಿಗೂ ಕೆಲಸ ಮಾಡುತ್ತವೆ.