HTTP স্ট্যাটাস কোড লুকআপ কী?
HTTP স্ট্যাটাস কোড হলো তিন অঙ্কের সংখ্যা যা একটি ওয়েব সার্ভার প্রতিটি প্রতিক্রিয়ার সাথে ফেরত পাঠায়, ক্লায়েন্টকে (ব্রাউজার, অ্যাপ বা API ব্যবহারকারী) জানিয়ে দেয় অনুরোধটি সফল হয়েছে, পুনঃনির্দেশ প্রয়োজন, নাকি ব্যর্থ হয়েছে — এবং কেন। এগুলো IETF দ্বারা প্রমিতকৃত এবং প্রতিটি ওয়েব সার্ভার, ব্রাউজার ও প্রোগ্রামিং ভাষায় অভিন্নভাবে ব্যবহৃত হয়, যা এগুলোকে সফটওয়্যার উন্নয়নে সবচেয়ে সার্বজনীন ডিবাগিং রেফারেন্সের একটি করে তোলে।
এই অনুসন্ধান টুলটি পাঁচটি বিভাগের সবগুলোতেই সবচেয়ে বেশি সম্মুখীন হওয়া কোডগুলো কভার করে — তথ্যমূলক (1xx), সাফল্য (2xx), পুনঃনির্দেশ (3xx), ক্লায়েন্ট ত্রুটি (4xx) এবং সার্ভার ত্রুটি (5xx) — প্রতিটির প্রকৃত অর্থ সহজ ভাষায় ব্যাখ্যাসহ, শুধু আনুষ্ঠানিক RFC সংজ্ঞা নয়।
এই ক্যালকুলেটর কখন ব্যবহার করবেন
- API ইন্টিগ্রেশন ডিবাগ করার সময় যখন একটি অনুরোধ ব্যর্থ হচ্ছে এবং আপনাকে বুঝতে হবে স্ট্যাটাস কোডটি আসলে কী বোঝায়
- নির্দিষ্ট একটি ত্রুটি অবস্থার জন্য নিজের API থেকে কোন HTTP স্ট্যাটাস কোড ফেরত দেবেন তা ঠিক করার সময়
- ওয়েব ডেভেলপমেন্ট কোর্স বা বুটক্যাম্পে HTTP মৌলিক বিষয় শেখানো বা শেখার সময়
- বিভিন্ন 4xx এবং 5xx পরিস্থিতির মধ্যে পার্থক্য করতে হবে এমন এরর-হ্যান্ডলিং মিডলওয়্যার লেখার সময়
- 301 নাকি 302 ফেরত দেওয়া হয়েছে তা যাচাই করে একটি পুনঃনির্দেশ কেন কাজ করছে না তা তদন্ত করার সময়
- ব্রাউজার নেটওয়ার্ক ত্রুটি দেখালেও সার্ভার 200 ফেরত দেওয়া এমন CORS সমস্যা সমাধানের সময়
ধাপসমূহ:
- সার্চ বক্সে একটি স্ট্যাটাস কোড (যেমন 404) বা একটি কীওয়ার্ড (যেমন "forbidden") টাইপ করুন।
- নির্দিষ্ট একটি পরিসর দেখতে চাইলে 1xx-5xx বোতাম ব্যবহার করে বিভাগ অনুযায়ী ফিল্টার করুন।
- কোডটির অর্থ কী এবং কখন এটি সাধারণত ফেরত দেওয়া হয় তার সহজ ব্যাখ্যা পড়ুন।
- API প্রতিক্রিয়া ডিবাগ করার সময় বা এরর হ্যান্ডলিং তৈরির সময় এটিকে দ্রুত রেফারেন্স হিসেবে ব্যবহার করুন।
সূত্র
1xx: তথ্যমূলক — অনুরোধ গৃহীত হয়েছে, প্রক্রিয়া চলছে
2xx: সাফল্য — অনুরোধ সফলভাবে গৃহীত ও স্বীকৃত হয়েছে
3xx: পুনঃনির্দেশ — অনুরোধ সম্পূর্ণ করতে আরও পদক্ষেপ প্রয়োজন
4xx: ক্লায়েন্ট ত্রুটি — অনুরোধে ত্রুটিপূর্ণ সিনট্যাক্স আছে বা পূরণ করা যাচ্ছে না
5xx: সার্ভার ত্রুটি — সার্ভার একটি বৈধ অনুরোধ পূরণ করতে ব্যর্থ হয়েছে
ব্যবহারের ক্ষেত্র
- আপনি যে API-র সাথে ইন্টিগ্রেশন করছেন সেটির ফেরত দেওয়া অপরিচিত একটি স্ট্যাটাস কোড দ্রুত বুঝতে
- নির্দিষ্ট একটি ত্রুটি অবস্থার জন্য নিজের API থেকে কোন স্ট্যাটাস কোড ফেরত দেবেন তা ঠিক করতে
- নির্দিষ্ট একটি কোড আসলে কী বোঝায় তা যাচাই করে একটি অনুরোধ কেন ব্যর্থ হচ্ছে তা ডিবাগ করতে
- ওয়েব ডেভেলপমেন্ট কোর্সে HTTP মৌলিক বিষয় শেখাতে বা শিখতে
- বিভিন্ন 4xx এবং 5xx পরিস্থিতির মধ্যে পার্থক্য করে এমন সঠিক এরর-হ্যান্ডলিং লজিক লিখতে
প্রধান সুবিধাসমূহ
- সাধারণভাবে ব্যবহৃত প্রতিটি স্ট্যাটাস কোড একটি খুঁজে পাওয়া যায় এমন রেফারেন্সে
- সহজ ভাষায় ব্যাখ্যা, শুধু আনুষ্ঠানিক RFC শব্দবন্ধ নয়
- বিভাগ অনুযায়ী তাৎক্ষণিক ফিল্টার (1xx থেকে 5xx)
- বিনামূল্যে, দ্রুত, কোনো সাইন-আপ ছাড়াই
প্রো টিপস
- 5xx কোড কঠোরভাবে শুধু সার্ভার-পার্শ্ব ব্যর্থতার জন্য সংরক্ষণ করুন — ক্লায়েন্টের ইনপুট ত্রুটি নির্দেশ করতে এগুলো কখনো ব্যবহার করবেন না
- রেট-লিমিটিং করার সময় Retry-After হেডারসহ 429 ব্যবহার করুন, যাতে সঠিক আচরণকারী ক্লায়েন্টরা জানে কখন পুনরায় চেষ্টা করবে
- কোনো সম্পদ সত্যিই না থাকলে সাধারণ এরর পৃষ্ঠার বদলে 404-ই পছন্দ করুন — এটি ব্যবহারকারী ও সার্চ ইঞ্জিন উভয়ের জন্য ভালো
- API ডিজাইন করার সময় সবকিছুকে সাধারণ 400-এ ডিফল্ট না করে নির্দিষ্ট 4xx কোড (422, 409, 400) বেছে নিন
এড়ানোর সাধারণ ভুলসমূহ
- আসলে ব্যর্থ হওয়া একটি অনুরোধের জন্য 200 OK ফেরত দেওয়া, যা মনিটরিং টুল থেকে ত্রুটি লুকিয়ে রাখে
- 401 (প্রমাণীকৃত নয়) এবং 403 (প্রমাণীকৃত কিন্তু অনুমোদিত নয়) গুলিয়ে ফেলা
- স্থায়ী হওয়া উচিত এমন (301) পুনঃনির্দেশের জন্য 302 ব্যবহার করা, যা SEO-র ক্ষতি করে
- ক্লায়েন্ট-পার্শ্ব এরর হ্যান্ডলিংয়ে নির্দিষ্ট কোড অনুযায়ী শাখা না করে সব 4xx এবং 5xx ত্রুটিকে একইভাবে বিবেচনা করা
মূল শব্দ ব্যাখ্যা
- স্ট্যাটাস লাইন: একটি HTTP প্রতিক্রিয়ার প্রথম লাইন, যাতে স্ট্যাটাস কোড এবং একটি সংক্ষিপ্ত কারণ-বাক্যাংশ থাকে
- ইডেম্পোটেন্ট: কিছু HTTP মেথডের একটি বৈশিষ্ট্য যেখানে একই অনুরোধ বারবার করা একবার করার সমান প্রভাব ফেলে
- পুনঃনির্দেশ শৃঙ্খল: চূড়ান্ত সম্পদে পৌঁছানোর আগে ব্রাউজার অনুসরণ করা একাধিক পুনঃনির্দেশের একটি ক্রম
- রেট লিমিটিং: একটি নির্দিষ্ট সময়-জানালায় ক্লায়েন্ট কতগুলো অনুরোধ করতে পারবে তা সীমাবদ্ধ করা, প্রায়ই 429 দিয়ে নির্দেশিত
সম্পর্কিত ধারণা
- JSON ফরম্যাটার:
- JSON ভ্যালিডেটর:
- Regex পরীক্ষক:
- URL এনকোডার/ডিকোডার:
- Base64 এনকোডার/ডিকোডার:
উদাহরণ
"429" খুঁজলে "Too Many Requests" পাওয়া যায় — যে কোড APIগুলো ফেরত দেয় যখন আপনি রেট লিমিট অতিক্রম করেন, আপনাকে জানায় ধীর গতিতে যেতে এবং কিছুটা বিরতি দিয়ে পুনরায় চেষ্টা করতে।
আপনার ফলাফলের ব্যাখ্যা
HTTP স্ট্যাটাস কোড প্রথম অঙ্ক অনুযায়ী পাঁচটি শ্রেণিতে ভাগ করা হয়। 1xx তথ্যমূলক এবং অ্যাপ্লিকেশন কোডে খুব কমই দেখা যায়। 2xx সাফল্য নিশ্চিত করে — 200 OK সবচেয়ে সাধারণ, তবে 201 Created এবং 204 No Content-ও REST API-তে ঘন ঘন দেখা যায়। 3xx পুনঃনির্দেশ পরিচালনা করে, যেখানে 301 (স্থায়ী) এবং 302 (অস্থায়ী) সবচেয়ে গুরুত্বপূর্ণ।
4xx ত্রুটি নির্দেশ করে ক্লায়েন্টের অনুরোধে কিছু সমস্যা আছে। সবচেয়ে সাধারণ হলো 400 Bad Request (ত্রুটিপূর্ণ সিনট্যাক্স), 401 Unauthorized (প্রমাণীকৃত নয়), 403 Forbidden (অনুমোদিত নয়), 404 Not Found (সম্পদ বিদ্যমান নেই) এবং 429 Too Many Requests (রেট লিমিট অতিক্রম)। নির্দিষ্ট 4xx কোডের সঠিক ব্যবহার আপনার API-কে সবকিছুর জন্য সাধারণ 400 ফেরত দেওয়ার চেয়ে অনেক সহজে ডিবাগযোগ্য করে তোলে।
5xx ত্রুটি মানে সার্ভার ব্যর্থ হয়েছে। 500 হলো সাধারণ অভ্যন্তরীণ ত্রুটি, 502 Bad Gateway আপস্ট্রিম সার্ভারের সমস্যা নির্দেশ করে, এবং 503 Service Unavailable সাধারণত মানে সার্ভার ওভারলোডেড বা রক্ষণাবেক্ষণের জন্য বন্ধ। 5xx ত্রুটি ডিবাগ করার সময় ক্লায়েন্ট-পার্শ্ব প্রতিক্রিয়ার বদলে সার্ভার লগ পরীক্ষা করুন, কারণ শুধু স্ট্যাটাস কোড দিয়ে খুব কমই মূল কারণ প্রকাশ পায়।

