আমার ওয়েব অ্যাপ্লিকেশনটিতে একটি লগইন পৃষ্ঠা রয়েছে যা একটি এজেএক্স কলের মাধ্যমে প্রমাণীকরণের শংসাপত্র জমা দেয়। যদি ব্যবহারকারী সঠিক ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রবেশ করে তবে সবকিছু ঠিক আছে, তবে তা না হলে নিম্নলিখিতটি ঘটে:
- ওয়েব সার্ভার নির্ধারণ করে যে অনুরোধটিতে একটি সুগঠিত অনুমোদনের শিরোনাম অন্তর্ভুক্ত ছিল, শিরোনামের শংসাপত্রগুলি সফলভাবে প্রমাণীকরণ করে না।
- ওয়েব সার্ভার একটি 401 স্থিতি কোড দেয় এবং সমর্থিত প্রমাণীকরণের ধরণের তালিকার এক বা একাধিক ডাব্লুডাব্লুডাব্লু-প্রমাণীকরণ শিরোনাম অন্তর্ভুক্ত করে।
- ব্রাউজারটি সনাক্ত করে যে XMLHttpRequest অবজেক্টে আমার কলটির প্রতিক্রিয়া 401 এবং প্রতিক্রিয়াটিতে WWW- প্রমাণীকরণ শিরোনাম রয়েছে। এরপরে এটি ব্যবহারকারীর নাম এবং পাসওয়ার্ডের জন্য আবার জিজ্ঞাসা করে একটি প্রমাণীকরণ ডায়ালগ পপ আপ করে।
পদক্ষেপ 3 পর্যন্ত এটি ঠিক আছে I আমি ডায়ালগটি পপ আপ করতে চাই না, আমি আমার AJAX কলব্যাক ফাংশনটিতে 401 প্রতিক্রিয়াটি পরিচালনা করতে চাই। (উদাহরণস্বরূপ, লগইন পৃষ্ঠায় একটি ত্রুটি বার্তা প্রদর্শন করে)) আমি অবশ্যই ব্যবহারকারী তাদের ব্যবহারকারী নাম এবং পাসওয়ার্ডটি অবশ্যই পুনরায় প্রবেশ করিয়ে দিতে চাই, তবে আমি তাদেরকে আমার বন্ধুত্বপূর্ণ, আশ্বস্ত লগইন ফর্মটি দেখতে চান, ব্রাউজারের কুরুচিপূর্ণ নয়, ডিফল্ট প্রমাণীকরণ ডায়ালগ
ঘটনাক্রমে, সার্ভারের উপরে আমার কোনও নিয়ন্ত্রণ নেই, সুতরাং এটি একটি কাস্টম স্থিতি কোড (যেমন, 401 ব্যতীত অন্য কিছু) ফিরিয়ে আনা কোনও বিকল্প নয়।
প্রমাণীকরণের ডায়ালগটি দমন করার কোনও উপায় আছে কি? বিশেষত, আমি ফায়ারফক্স 2 বা তার পরে প্রমাণীকরণের প্রয়োজনীয় সংলাপটি চাপতে পারি? আইই 6 এবং তার পরে সংযুক্ত [হোস্ট] সংলাপটি দমন করার কোনও উপায় আছে কি ?
লেখকের অতিরিক্ত তথ্য সম্পাদনা করুন (18 সেপ্টেম্বর):
আমার যুক্ত করা উচিত যে ব্রাউজারের প্রমাণীকরণ ডায়ালগ পপিংয়ের সাথে আসল সমস্যাটি হ'ল এটি ব্যবহারকারীকে অপর্যাপ্ত তথ্য দেয়।
ব্যবহারকারী সবেমাত্র লগইন পৃষ্ঠায় ফর্মটির মাধ্যমে একটি ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রবেশ করিয়েছেন, তিনি বিশ্বাস করেন যে সে দুটিই সঠিকভাবে টাইপ করেছে এবং সে সাবমিট বাটনটি ক্লিক করেছে বা এন্টার টিপুন। তার প্রত্যাশাটি হ'ল তাকে পরবর্তী পৃষ্ঠায় নিয়ে যাওয়া হবে বা সম্ভবত বলা হয়েছে যে তিনি তার তথ্যটি ভুলভাবে প্রবেশ করেছেন এবং আবার চেষ্টা করা উচিত। যাইহোক, পরিবর্তে তাকে একটি অপ্রত্যাশিত ডায়ালগ বাক্স উপস্থাপন করা হয়েছে।
ডায়ালগ আসলে সে শুধু কোন স্বীকৃতি তোলে করেনি একটি ব্যবহারকারী নাম ও পাসওয়ার্ড লিখুন। এটি স্পষ্টভাবে জানিয়ে দেয় না যে কোনও সমস্যা ছিল এবং তার আবার চেষ্টা করা উচিত। পরিবর্তে, ডায়ালগ বাক্সটি ব্যবহারকারীকে "সাইটটি বলেছেন: ' [রাজ্য] ' এর মতো ক্রিপ্টিক তথ্য সহ উপস্থাপন করে ।" যেখানে [রাজ্য] একটি সংক্ষিপ্ত রাজ্যের নাম যা কেবলমাত্র একজন প্রোগ্রামার পছন্দ করতে পারে।
ওয়েব ব্রোজার ডিজাইনারগণ দ্রষ্টব্য: ডায়ালগটি যদি আরও ব্যবহারকারী-বান্ধব হয় তবে কেউ প্রমাণীকরণ ডায়ালগটি কীভাবে দমন করবেন তা জিজ্ঞাসা করবে না। সমগ্র কারণ যে, আমি একজন লগইন ফর্ম করছি যা আমাদের পণ্যের ব্যবস্থাপনা দল ন্যায়ত বিবেচনায় ব্রাউজার 'প্রমাণীকরণ ডায়ালগ ভয়াবহ হতে হয়।