যদি Authentication মেথডের কমপ্লিশন কলব্যাকে nil নয় এমন কোনো NSError আর্গুমেন্ট আসে, তাহলে একটি ত্রুটি ঘটেছে। আপনার প্রোডাকশন কোডে যথাযথ ত্রুটি-পরিচালনা লজিকে ব্যবস্থা নিতে, নিচে তালিকাভুক্ত সাধারণ ত্রুটি এবং মেথড-নির্দিষ্ট ত্রুটিগুলোর সাথে এরর কোডটি মিলিয়ে দেখুন।
কিছু ত্রুটি ব্যবহারকারীর নির্দিষ্ট কিছু পদক্ষেপের মাধ্যমে সমাধান করা যেতে পারে, যেমন, FIRAuthErrorCodeUserTokenExpired ব্যবহারকারীকে পুনরায় সাইন ইন করার মাধ্যমে এবং FIRAuthErrorCodeWrongPassword ব্যবহারকারীকে সঠিক পাসওয়ার্ড দিতে বলার মাধ্যমে সমাধান করা যায়।
FIRAuthErrorCodeNetworkError বা FIRAuthErrorCodeTooManyRequests এর ক্ষেত্র ব্যতীত, একই আর্গুমেন্ট দিয়ে একটি ব্যর্থ অপারেশন পুনরায় চেষ্টা করলে তা কখনই সফল হবে না। অপারেশনটি সার্ভার সাইডে কার্যকর হয়েছে কি না, সে বিষয়ে কোনো অনুমান করবেন না।
ত্রুটি তদন্ত বা লগ করার সময়, userInfo ডিকশনারিটি পর্যালোচনা করুন। FIRAuthErrorNameKey তে একটি ক্রস-প্ল্যাটফর্ম ত্রুটির নামের স্ট্রিং থাকে যা ত্রুটিটি শনাক্ত করার জন্য ব্যবহার করা যেতে পারে। NSLocalizedDescriptionKey ত্রুটিটির একটি বিবরণ থাকে। এই বিবরণটি ডেভেলপারের জন্য, ব্যবহারকারীর জন্য নয়। যদি কোনো অন্তর্নিহিত ত্রুটি থাকে, তবে NSUnderlyingErrorKey সেই অন্তর্নিহিত ত্রুটিটি থাকে যা আলোচ্য ত্রুটিটির কারণ হয়েছে।
উপরে তালিকাভুক্ত প্রধান ফিল্ডগুলো ছাড়াও, userInfo ডিকশনারিতে অন্যান্য ফিল্ডও থাকতে পারে যা ত্রুটি নির্ণয়ের সময় আপনার কাজে লাগতে পারে।
সকল API পদ্ধতির জন্য সাধারণ ত্রুটি কোড
| কোড | অর্থ |
|---|
FIRAuthErrorCodeNetworkError | এটি নির্দেশ করে যে কার্যক্রম চলাকালীন একটি নেটওয়ার্ক ত্রুটি ঘটেছে। |
FIRAuthErrorCodeUserNotFound | ব্যবহারকারীর অ্যাকাউন্টটি খুঁজে পাওয়া যায়নি। ব্যবহারকারীর অ্যাকাউন্টটি মুছে ফেলা হলে এমনটা হতে পারে। |
FIRAuthErrorCodeUserTokenExpired | এটি নির্দেশ করে যে বর্তমান ব্যবহারকারীর টোকেনের মেয়াদ শেষ হয়ে গেছে, যেমন, ব্যবহারকারী হয়তো অন্য কোনো ডিভাইসে অ্যাকাউন্টের পাসওয়ার্ড পরিবর্তন করেছেন। আপনাকে অবশ্যই ব্যবহারকারীকে এই ডিভাইসে পুনরায় সাইন ইন করার জন্য অনুরোধ করতে হবে। |
FIRAuthErrorCodeTooManyRequests | এটি নির্দেশ করে যে, কলার ডিভাইস থেকে Firebase Authentication সার্ভারগুলিতে অস্বাভাবিক সংখ্যক অনুরোধ করার কারণে অনুরোধটি ব্লক করা হয়েছে। কিছুক্ষণ পর আবার চেষ্টা করুন। |
FIRAuthErrorCodeInvalidAPIKey | এটি নির্দেশ করে যে অ্যাপ্লিকেশনটি একটি অবৈধ এপিআই কী দিয়ে কনফিগার করা হয়েছে। |
FIRAuthErrorCodeAppNotAuthorized | এটি নির্দেশ করে যে, প্রদত্ত এপিআই কী (API Key) দিয়ে ফায়ারবেস অথেনটিকেশন (Firebase Authentication) ব্যবহার করার জন্য অ্যাপটি অনুমোদিত নয়। গুগল এপিআই কনসোলে (Google API Console) যান এবং ক্রেডেনশিয়ালস (credentials) ট্যাবের অধীনে পরীক্ষা করে দেখুন যে, আপনার ব্যবহৃত এপিআই কী-তে আপনার অ্যাপ্লিকেশনের বান্ডেল আইডি (bundle ID) হোয়াইটলিস্টেড (whitelisted) আছে কিনা। |
FIRAuthErrorCodeKeychainError | কীচেইন অ্যাক্সেস করার সময় একটি ত্রুটি ঘটেছে। NSError.userInfo ডিকশনারির NSLocalizedFailureReasonErrorKey এবং NSUnderlyingErrorKey ফিল্ডগুলিতে সম্মুখীন হওয়া ত্রুটি সম্পর্কে আরও তথ্য থাকবে। |
FIRAuthErrorCodeInternalError | একটি অভ্যন্তরীণ ত্রুটি ঘটেছে। অনুগ্রহ করে সম্পূর্ণ NSError অবজেক্টটি সহ ত্রুটিটি জানান । |
পদ্ধতি-নির্দিষ্ট ত্রুটি কোড
FIRAuth
ইমেইলের জন্য প্রোভাইডারদের আনুন:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeInvalidEmail | এটি নির্দেশ করে যে ইমেল ঠিকানাটি ত্রুটিপূর্ণ। |
ইমেইল দিয়ে সাইন ইন করুন: পাসওয়ার্ড: সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeOperationNotAllowed | এটি নির্দেশ করে যে ইমেল এবং পাসওয়ার্ড অ্যাকাউন্টগুলি সক্রিয় করা নেই। Firebase কনসোলে এগুলি সক্রিয় করুন ( Security > Authentication > Sign-in method ট্যাবে যান)। |
FIRAuthErrorCodeInvalidEmail | এটি নির্দেশ করে যে ইমেল ঠিকানাটি ত্রুটিপূর্ণ। |
FIRAuthErrorCodeUserDisabled | ব্যবহারকারীর অ্যাকাউন্টটি নিষ্ক্রিয় করা হয়েছে। |
FIRAuthErrorCodeWrongPassword | এটি নির্দেশ করে যে ব্যবহারকারী ভুল পাসওয়ার্ড দিয়ে সাইন ইন করার চেষ্টা করেছেন। |
ক্রেডেনশিয়াল দিয়ে সাইন ইন করুন:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeInvalidCredential | এটি নির্দেশ করে যে প্রদত্ত পরিচয়পত্রটি অবৈধ। এর মেয়াদ শেষ হয়ে গেলে বা এটি ত্রুটিপূর্ণ হলে এমনটি হতে পারে। |
FIRAuthErrorCodeInvalidEmail | যদি ক্রেডেনশিয়ালটি EmailPasswordAuthCredential ধরনের হয়, তবে এটি নির্দেশ করে যে ইমেল ঠিকানাটি ভুলভাবে গঠিত। |
FIRAuthErrorCodeOperationNotAllowed | এটি নির্দেশ করে যে ক্রেডেনশিয়াল দ্বারা প্রতিনিধিত্ব করা আইডেন্টিটি প্রোভাইডারের অ্যাকাউন্টগুলি সক্রিয় করা নেই। Firebase কনসোলে সেগুলি সক্রিয় করুন ( Security > Authentication > Sign-in method ট্যাবে যান)। |
FIRAuthErrorCodeEmailAlreadyInUse | এটি নির্দেশ করে যে ক্রেডেনশিয়াল দ্বারা ব্যবহৃত ইমেলটি (যেমন ফেসবুক অ্যাক্সেস টোকেনের ইমেল) ইতিমধ্যেই একটি বিদ্যমান অ্যাকাউন্ট দ্বারা ব্যবহৃত হচ্ছে, যা এই সাইন-ইন পদ্ধতি দ্বারা প্রমাণীকরণ করা যাবে না। এই ব্যবহারকারীর ইমেলের জন্য fetchProvidersForEmail কল করুন এবং তারপরে ফেরত আসা যেকোনো সাইন-ইন প্রোভাইডার দিয়ে তাদের সাইন ইন করতে বলুন। এই ত্রুটিটি কেবল তখনই দেখা দেবে যদি Firebase কনসোলে "প্রতিটি ইমেল ঠিকানার জন্য একটি অ্যাকাউন্ট" বিকল্পটি সক্রিয় করা থাকে ( Security > Authentication > Settings ট্যাবে যান)। |
FIRAuthErrorCodeUserDisabled | ব্যবহারকারীর অ্যাকাউন্টটি নিষ্ক্রিয় করা হয়েছে। |
FIRAuthErrorCodeWrongPassword | যদি ক্রেডেনশিয়ালটি EmailPasswordAuthCredential ধরনের হয়, তবে এটি নির্দেশ করে যে ব্যবহারকারী ভুল পাসওয়ার্ড দিয়ে সাইন ইন করার চেষ্টা করেছেন। |
সম্পূর্ণ হলে বেনামে সাইন ইন করুন:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeOperationNotAllowed | এটি নির্দেশ করে যে বেনামী অ্যাকাউন্টগুলি সক্রিয় করা নেই। Firebase কনসোলে সেগুলি সক্রিয় করুন ( Security > Authentication > Sign-in method ট্যাবে যান)। |
কাস্টম টোকেন দিয়ে সাইন ইন করুন:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeInvalidCustomToken | কাস্টম টোকেনটির যাচাইকরণে ত্রুটি নির্দেশ করে। |
FIRAuthErrorCodeCustomTokenMismatch | এটি নির্দেশ করে যে সার্ভিস অ্যাকাউন্ট এবং এপিআই কী ভিন্ন ভিন্ন প্রজেক্টের অন্তর্গত। |
ইমেল দিয়ে ব্যবহারকারী তৈরি করুন:পাসওয়ার্ড:সম্পূর্ণতা
| কোড | অর্থ |
|---|
FIRAuthErrorCodeInvalidEmail | এটি নির্দেশ করে যে ইমেল ঠিকানাটি ত্রুটিপূর্ণ। |
FIRAuthErrorCodeEmailAlreadyInUse | এটি নির্দেশ করে যে সাইন আপ করার জন্য ব্যবহৃত ইমেলটি ইতিমধ্যেই বিদ্যমান। উক্ত ব্যবহারকারী কোন কোন সাইন-ইন পদ্ধতি ব্যবহার করেছেন তা পরীক্ষা করতে fetchProvidersForEmail কল করুন, এবং ব্যবহারকারীকে সেগুলোর মধ্যে একটি দিয়ে সাইন ইন করতে অনুরোধ করুন। |
FIRAuthErrorCodeOperationNotAllowed | এটি নির্দেশ করে যে ইমেল এবং পাসওয়ার্ড অ্যাকাউন্টগুলি সক্রিয় করা নেই। Firebase কনসোলে এগুলি সক্রিয় করুন ( Security > Authentication > Sign-in method ট্যাবে যান)। |
FIRAuthErrorCodeWeakPassword | এটি এমন একটি পাসওয়ার্ড সেট করার প্রচেষ্টাকে নির্দেশ করে যা অত্যন্ত দুর্বল বলে বিবেচিত। NSError.userInfo ডিকশনারি অবজেক্টের NSLocalizedFailureReasonErrorKey ফিল্ডটিতে আরও বিস্তারিত ব্যাখ্যা থাকবে যা ব্যবহারকারীকে দেখানো যেতে পারে। |
সাইন আউট:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeKeychainError | কীচেইন অ্যাক্সেস করার সময় একটি ত্রুটি ঘটেছে বলে জানানো হয়েছে। NSError.userInfo ডিকশনারির NSLocalizedFailureReasonErrorKey এবং NSUnderlyingErrorKey ফিল্ডগুলোতে সম্মুখীন হওয়া ত্রুটি সম্পর্কে আরও তথ্য থাকবে। |
FIRUser
FIRUser অপারেশনের সাধারণ ত্রুটিসমূহ
| কোড | অর্থ |
|---|
FIRAuthErrorCodeInvalidUserToken | এটি নির্দেশ করে যে সাইন-ইন করা ব্যবহারকারীর রিফ্রেশ টোকেন, যা সেশনের তথ্য ধারণ করে, তা অবৈধ। আপনাকে অবশ্যই ব্যবহারকারীকে এই ডিভাইসে পুনরায় সাইন ইন করতে অনুরোধ করতে হবে। |
FIRAuthErrorCodeUserDisabled | এটি নির্দেশ করে যে ব্যবহারকারীর অ্যাকাউন্টটি নিষ্ক্রিয় করা হয়েছে এবং Firebase কনসোলে ( Security > Authentication > Users ট্যাবে যান) পুনরায় সক্রিয় না করা পর্যন্ত এটি আর ব্যবহার করা যাবে না। |
ক্রেডেনশিয়াল দিয়ে পুনরায় প্রমাণীকরণ:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeInvalidCredential | এটি নির্দেশ করে যে প্রদত্ত পরিচয়পত্রটি অবৈধ। এর মেয়াদ শেষ হয়ে গেলে বা এটি ত্রুটিপূর্ণ হলে এমনটি হতে পারে। |
FIRAuthErrorCodeInvalidEmail | যদি ক্রেডেনশিয়ালটি EmailPasswordAuthCredential ধরনের হয়, তবে এটি নির্দেশ করে যে ইমেল ঠিকানাটি ভুলভাবে গঠিত। |
FIRAuthErrorCodeWrongPassword | যদি ক্রেডেনশিয়ালটি EmailPasswordAuthCredential টাইপের হয়, তবে এটি নির্দেশ করে যে ব্যবহারকারী একটি ভুল পাসওয়ার্ড দিয়ে পুনরায় প্রমাণীকরণের চেষ্টা করেছেন। |
FIRAuthErrorCodeUserMismatch | এটি নির্দেশ করে যে বর্তমান ব্যবহারকারী নন এমন অন্য কোনো ব্যবহারকারীকে দিয়ে পুনরায় প্রমাণীকরণের চেষ্টা করা হয়েছিল। |
FIRAuthErrorCodeOperationNotAllowed | এটি নির্দেশ করে যে ক্রেডেনশিয়াল দ্বারা প্রতিনিধিত্ব করা আইডেন্টিটি প্রোভাইডারের অ্যাকাউন্টগুলো সক্রিয় করা নেই। Firebase কনসোলে গিয়ে সেগুলো সক্রিয় করুন ( Security > Authentication- এ যান)। |
FIRAuthErrorCodeEmailAlreadyInUse | এটি নির্দেশ করে যে ক্রেডেনশিয়াল দ্বারা ব্যবহৃত ইমেলটি (যেমন ফেসবুক অ্যাক্সেস টোকেনের ইমেল) ইতিমধ্যেই একটি বিদ্যমান অ্যাকাউন্ট দ্বারা ব্যবহৃত হচ্ছে, এবং এই সাইন-ইন পদ্ধতি ব্যবহার করে সেটিকে পুনরায় প্রমাণীকরণ করা যাবে না। এই ব্যবহারকারীর ইমেলের জন্য fetchProvidersForEmail কল করুন এবং তারপরে প্রাপ্ত যেকোনো সাইন-ইন প্রোভাইডার ব্যবহার করে তাকে সাইন ইন করতে বলুন। এই ত্রুটিটি কেবল তখনই দেখা দেবে যদি Firebase কনসোলে "প্রতিটি ইমেল ঠিকানার জন্য একটি অ্যাকাউন্ট" বিকল্পটি সক্রিয় করা থাকে ( Security > Authentication > Settings ট্যাবে যান)। |
FIRAuthErrorCodeUserDisabled | ব্যবহারকারীর অ্যাকাউন্টটি নিষ্ক্রিয় করা হয়েছে। |
ইমেল আপডেট করুন:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeEmailAlreadyInUse | এটি নির্দেশ করে যে ইমেলটি ইতিমধ্যেই অন্য একটি অ্যাকাউন্ট দ্বারা ব্যবহৃত হচ্ছে। |
FIRAuthErrorCodeInvalidEmail | এটি নির্দেশ করে যে ইমেল ঠিকানাটি ত্রুটিপূর্ণ। |
FIRAuthErrorCodeRequiresRecentLogin | ব্যবহারকারীর ইমেল আপডেট করা একটি নিরাপত্তা-সংবেদনশীল কার্যক্রম, যার জন্য ব্যবহারকারীর সাম্প্রতিক লগইন প্রয়োজন। এই ত্রুটিটি নির্দেশ করে যে ব্যবহারকারী যথেষ্ট সম্প্রতি সাইন ইন করেননি। এর সমাধান করতে, FIRUser উপর reauthenticateWithCredential:completion: কল করে ব্যবহারকারীকে পুনরায় প্রমাণীকরণ করুন। |
পাসওয়ার্ড আপডেট:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeOperationNotAllowed | এটি নির্দেশ করে যে প্রশাসক নির্দিষ্ট আইডেন্টিটি প্রোভাইডার ব্যবহার করে সাইন ইন করা নিষ্ক্রিয় করেছেন। |
FIRAuthErrorCodeRequiresRecentLogin | ব্যবহারকারীর পাসওয়ার্ড আপডেট করা একটি নিরাপত্তা-সংবেদনশীল প্রক্রিয়া, যার জন্য ব্যবহারকারীর সাম্প্রতিক লগইন প্রয়োজন। এই ত্রুটিটি নির্দেশ করে যে ব্যবহারকারী যথেষ্ট সম্প্রতি সাইন ইন করেননি। এর সমাধান করতে, FIRUser উপর reauthenticateWithCredential:completion: কল করে ব্যবহারকারীকে পুনরায় প্রমাণীকরণ করুন। |
FIRAuthErrorCodeWeakPassword | এটি এমন একটি পাসওয়ার্ড সেট করার প্রচেষ্টাকে নির্দেশ করে যা অত্যন্ত দুর্বল বলে বিবেচিত। NSError.userInfo ডিকশনারি অবজেক্টের NSLocalizedFailureReasonErrorKey ফিল্ডটিতে আরও বিস্তারিত ব্যাখ্যা থাকবে যা ব্যবহারকারীকে দেখানো যেতে পারে। |
linkWithCredential:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeProviderAlreadyLinked | এটি এমন এক ধরনের প্রদানকারীকে সংযুক্ত করার প্রচেষ্টা নির্দেশ করে, যা ইতিমধ্যেই এই অ্যাকাউন্টের সাথে সংযুক্ত। |
FIRAuthErrorCodeCredentialAlreadyInUse | এটি এমন একটি ক্রেডেনশিয়াল দিয়ে লিঙ্ক করার প্রচেষ্টাকে নির্দেশ করে যা ইতিমধ্যেই অন্য একটি Firebase অ্যাকাউন্টের সাথে লিঙ্ক করা আছে। |
FIRAuthErrorCodeOperationNotAllowed | এটি নির্দেশ করে যে ক্রেডেনশিয়াল দ্বারা প্রতিনিধিত্ব করা আইডেন্টিটি প্রোভাইডারের অ্যাকাউন্টগুলি সক্রিয় করা নেই। Firebase কনসোলে সেগুলি সক্রিয় করুন ( Security > Authentication > Sign-in method ট্যাবে যান)। |
এই পদ্ধতিটি FIRUser এ updateEmail:completion: এবং updatePassword:completion: এর সাথে সম্পর্কিত ত্রুটি কোডগুলিও ফেরত দিতে পারে।
unlinkFromProvider:সম্পূর্ণতা:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeNoSuchProvider | এমন কোনো প্রোভাইডারকে আনলিঙ্ক করার প্রচেষ্টা নির্দেশ করে, যা অ্যাকাউন্টটির সাথে লিঙ্ক করা নেই। |
FIRAuthErrorCodeRequiresRecentLogin | ইমেল আপডেট করা একটি নিরাপত্তা-সংবেদনশীল কার্যক্রম, যার জন্য ব্যবহারকারীর সাম্প্রতিক লগইন প্রয়োজন। এই ত্রুটিটি নির্দেশ করে যে ব্যবহারকারী যথেষ্ট সম্প্রতি সাইন ইন করেননি। এর সমাধান করতে, FIRUser উপর reauthenticateWithCredential:completion: কল করে ব্যবহারকারীকে পুনরায় প্রমাণীকরণ করুন। |
sendEmailVerificationWithCompletion:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeUserNotFound | ব্যবহারকারীর অ্যাকাউন্টটি খুঁজে পাওয়া যায়নি। |
deleteWithCompletion:
| কোড | অর্থ |
|---|
FIRAuthErrorCodeRequiresRecentLogin | ব্যবহারকারীর অ্যাকাউন্ট মুছে ফেলা একটি নিরাপত্তা-সংবেদনশীল প্রক্রিয়া, যার জন্য ব্যবহারকারীর সাম্প্রতিক লগইন প্রয়োজন। এই ত্রুটিটি নির্দেশ করে যে ব্যবহারকারী যথেষ্ট সম্প্রতি সাইন ইন করেননি। এর সমাধান করতে, FIRUser উপর reauthenticateWithCredential:completion: কল করে ব্যবহারকারীকে পুনরায় প্রমাণীকরণ করুন। |