একটি লুকানো এজেএক্স অনুরোধ কী?
আমি ব্যবহারকারীর ক্রিয়াটি তত্ক্ষণাত দেখা দেওয়ার জন্য তৈরি করা গোপন AJAX অনুরোধগুলির ব্যবহারের বৃদ্ধি লক্ষ্য করেছি। আমি এই ধরণের AJAX অনুরোধটিকে নন-ব্লকিং হিসাবে উল্লেখ করব। এটি ব্যবহারকারীদের সচেতন না হয়ে এটি করা একটি এজেএক্স অনুরোধ, এটি পটভূমিতে সম্পাদিত হয়েছে এবং এটি অপারেশনটি নিরব রয়েছে ( এজাজ কলটির সফল সমাপ্তির ইঙ্গিত করার জন্য কোনও ভারবস নেই )। লক্ষ্যটি হ'ল অপারেশনটি প্রদর্শিত হবে যা সত্যই এটি শেষ না হয়ে অবিলম্বে ঘটেছে।
এজেএক্স-র অনুরোধের নিষেধাজ্ঞার উদাহরণ এখানে রয়েছে;
- ইমেলগুলির একটি সংগ্রহে ব্যবহারকারী ক্লিকগুলি মুছুন। আইটেমগুলি তত্ক্ষণাত্ তাদের ইনবক্স থেকে অদৃশ্য হয়ে যায় এবং তারা অন্যান্য ক্রিয়াকলাপ দিয়ে চালিয়ে যেতে পারে। এদিকে, একটি এজেএক্স অনুরোধ পটভূমিতে আইটেমগুলি মোছার প্রক্রিয়া করছে।
- ব্যবহারকারী নতুন রেকর্ডের জন্য একটি ফর্ম পূরণ করে। ক্লিকগুলি সংরক্ষণ করুন। নতুন আইটেমটি তালিকায় তত্ক্ষণাত উপস্থিত হবে। ব্যবহারকারী নতুন রেকর্ড যুক্ত করা চালিয়ে যেতে পারেন।
স্পষ্ট করার জন্য, এজেএক্স অনুরোধটি ব্লক করার উদাহরণগুলি এখানে রয়েছে;
- ইমেলগুলির একটি সংগ্রহে ব্যবহারকারী ক্লিকগুলি মুছুন। একটি ঘন্টাঘড়ি কার্সার প্রদর্শিত হবে। এজেএক্স অনুরোধটি করা হয় এবং যখন এটি সাড়া দেয় তখন ঘড়ির কাচের কার্সারটি বন্ধ হয়ে যায়। অপারেশনটি সম্পূর্ণ হওয়ার জন্য ব্যবহারকারীকে এক সেকেন্ড অপেক্ষা করতে হবে।
- ব্যবহারকারী নতুন রেকর্ডের জন্য একটি ফর্ম পূরণ করে। ক্লিকগুলি সংরক্ষণ করুন। একটি এজেএক্স লোডার অ্যানিমেটিং দিয়ে ফর্মটি ধূসর হয়ে যায়। একটি বার্তা দেখানো হয়েছে "আপনার ডেটা সংরক্ষণ করা হয়েছিল" এবং নতুন রেকর্ডটি তালিকায় উপস্থিত হবে।
উপরোক্ত দুটি পরিস্থিতিতে পার্থক্য হ'ল একটি অ-ব্লক করা এজেএক্স সেটআপ কোনও অপারেটিং পারফরম্যান্সের প্রতিক্রিয়া সরবরাহ করে না এবং একটি ব্লকিং এজেএক্স সেটআপ করে।
লুকানো এজেএক্স অনুরোধগুলির ঝুঁকি
এজেএক্স অনুরোধের এই স্টাইলের সবচেয়ে বড় ঝুঁকিটি হ'ল যখন এজেএক্স অনুরোধটি ব্যর্থ হয় তখন ওয়েব অ্যাপ্লিকেশনটি সম্পূর্ণ আলাদা অবস্থায় থাকতে পারে।
উদাহরণস্বরূপ, একটি অবরুদ্ধকরণ উদাহরণ;
- ব্যবহারকারী একগুচ্ছ ইমেল নির্বাচন করে। মুছে ফেলা বোতামটি ক্লিক করে। অপারেশনটি তত্ক্ষণাত্ উপস্থিত হতে পারে (আইটেমগুলি কেবল তালিকা থেকে অদৃশ্য হয়ে যায়)। এরপরে ব্যবহারকারী রচনা বোতামটি ক্লিক করে একটি নতুন ইমেল টাইপ করা শুরু করে। এটি এই সময়ে জাভাস্ক্রিপ্ট কোড আবিষ্কার করে যে এজেএক্স অনুরোধটি ব্যর্থ হয়েছে। স্ক্রিপ্টটি একটি ত্রুটি বার্তা দেখাতে পারে, তবে এটি এই মুহূর্তে অর্থহীন।
পর্যায়ক্রমে, একটি ব্লক উদাহরণ;
- ব্যবহারকারী একগুচ্ছ ইমেল নির্বাচন করে। মুছে ফেলা বোতামটি ক্লিক করে। এক ঘন্টা গ্লাস দেখে তবে অপারেশন ব্যর্থ হয়। তারা "ত্রুটি। ব্লাহ ব্লাহ ব্লাহ" বলে একটি ত্রুটি বার্তা পেয়েছে। তারা ইমেলগুলির তালিকায় ফিরে আসে এবং তাদের এখনও নির্বাচিত মুছতে চাইত এমন ইমেল রয়েছে। তারা এগুলি আবার মুছতে চেষ্টা করতে পারে।
এজেএক্স-র অনুরোধগুলি নিষিদ্ধ করার জন্য অন্যান্য প্রযুক্তিগত ঝুঁকিও রয়েছে। ব্যবহারকারী ব্রাউজারটি বন্ধ করতে পারে, অন্য ওয়েবসাইটে নেভিগেট করতে পারে এবং তারা বর্তমান ওয়েবের অন্য কোনও স্থানে নেভিগেট করতে পারে যা কোনও ত্রুটির প্রতিক্রিয়ার প্রসঙ্গকে অর্থহীন করে তোলে।
তাহলে কেন এটি এত জনপ্রিয় হয়ে উঠছে?
ফেসবুক, গুগল, মাইক্রোসফ্ট, ইত্যাদি .. ইত্যাদি। এই সমস্ত বড় ডোমেন ক্রমবর্ধমান ক্রিয়াকলাপগুলি যাতে তাত্ক্ষণিকভাবে সম্পাদিত হয় তা প্রদর্শিত করার জন্য অ-ব্লক করা এজেএক্স অনুরোধগুলি ক্রমবর্ধমানভাবে ব্যবহার করছে। আমি ফর্ম সম্পাদকগুলির বৃদ্ধিও দেখেছি যার সংরক্ষণ বা জমা বোতাম নেই । আপনি কোনও ক্ষেত্র ছাড়ার সাথে সাথে এন্টার টিপুন। মান সংরক্ষণ করা হয়। সেখানে নেই আপনার প্রোফাইল আপডেট করা হয়েছে বার্তা বা সংরক্ষণ ধাপ।
AJAX অনুরোধগুলি একটি নির্দিষ্টতা নয় এবং এগুলি শেষ না হওয়া পর্যন্ত সফল হিসাবে বিবেচনা করা উচিত নয়, তবে অনেকগুলি বড় ওয়েব অ্যাপ্লিকেশন ঠিক সেভাবেই কাজ করছে।
এই ওয়েবসাইটগুলি যে প্রতিক্রিয়াশীল অ্যাপ্লিকেশনগুলি দ্রুত উপস্থিতি ব্যয় করে একটি অপ্রয়োজনীয় ঝুঁকি গ্রহণের অনুকরণের জন্য অ-ব্লকিং এজেএক্স কলগুলি ব্যবহার করে?
এটি কি এমন ডিজাইনের ধরণ যা প্রতিযোগিতামূলক থাকার জন্য আমাদের সকলকে অনুসরণ করা উচিত?