আপনি কখন একটি REST API এর অনুরোধ অংশে কাস্টম HTTP শিরোনাম ব্যবহার করবেন?
উদাহরণ:
আপনি কি কখনও ব্যবহার করবেন?
GET /orders/view
(custom HTTP header) CLIENT_ID: 23
পরিবর্তে
GET /orders/view/client_id/23 or
GET /orders/view/?client_id=23
আপনি কখন একটি REST API এর অনুরোধ অংশে কাস্টম HTTP শিরোনাম ব্যবহার করবেন?
উদাহরণ:
আপনি কি কখনও ব্যবহার করবেন?
GET /orders/view
(custom HTTP header) CLIENT_ID: 23
পরিবর্তে
GET /orders/view/client_id/23 or
GET /orders/view/?client_id=23
উত্তর:
ইউআরএল সংস্থান নিজেই ইঙ্গিত করে। একটি "ক্লায়েন্ট", একটি সম্পদ যে সে অনুপাতে কাজ করা যেতে পারে, যাতে ভিত্তি URL অংশ হওয়া উচিত: /orders/view/client/23।
প্যারামিটারগুলি কেবলমাত্র তাই, সংস্থানটিতে অ্যাক্সেসকে প্যারামিটারাইজ করতে। এটি বিশেষত পোস্ট এবং অনুসন্ধান করা খেলার মধ্যে আসে: /orders/find?q=blahblah&sort=foo। সেখানে পরামিতি ও উপ-সম্পদ মধ্যে একটি সূক্ষ্ম লাইন: /orders/view/client/23/active versus /orders/view/client/23?show=active। আমি সাব-রিসোর্স স্টাইল এবং অনুসন্ধানগুলির জন্য প্যারামিটারগুলি সংরক্ষণ করার পরামর্শ দিচ্ছি।
যেহেতু প্রতিটি প্রান্ত বিন্দু একটি রাজ্য স্থানান্তর (মিমোনিককে জাগ্রত করার জন্য) উপস্থাপন করে, কাস্টম শিরোনাম কেবলমাত্র সেই জিনিসগুলির জন্য ব্যবহার করা উচিত যা সংস্থার নাম (ইউআরএল), সংস্থার রাষ্ট্র (শরীর) বা পরামিতিগুলির সরাসরি জড়িত না সংস্থান (পরামিতি) প্রভাবিত করে। এটি কাস্টম হেডারগুলির অনুরোধ সম্পর্কে সত্য মেটাডেটা ছেড়ে দেয় leaves
এইচটিটিপি-র শিরোনামগুলির একটি খুব বিস্তৃত নির্বাচন রয়েছে যা আপনার প্রয়োজনীয় সমস্ত কিছু কভার করে। যেখানে আমি কাস্টম শিরোলেখগুলি দেখতে পেয়েছি তা কোনও সিস্টেমের মাধ্যমে সিস্টেমের অনুরোধে ব্যবহারকারীর পক্ষে কাজ করছে। প্রক্সি সিস্টেমটি ব্যবহারকারীকে বৈধতা দেবে এবং X-User: useridশিরোলেখগুলিতে " " যোগ করবে এবং শেষ পয়েন্টটিতে আঘাতের জন্য সিস্টেম শংসাপত্রগুলি ব্যবহার করবে। প্রাপ্ত সিস্টেমটি প্রমাণীকরণ করে যে সিস্টেম শংসাপত্রগুলি ব্যবহারকারীর পক্ষে কাজ করার জন্য অনুমোদিত, তারপরে যাচাই করুন যে ব্যবহারকারী ক্রিয়াটি সম্পাদনের জন্য অনুমোদিত।
কাস্টম শিরোনামগুলির নিম্নলিখিত সুবিধা রয়েছে:
আমি কেবলমাত্র একটি কাস্টম শিরোনাম ব্যবহার করব যখন স্ট্যান্ডার্ড বা কনভেনশন দ্বারা তথ্য পাস করার অন্য কোনও উপায় নেই। ড্যারেন 102 সেই মানটি পাস করার সাধারণ উপায়টি ব্যাখ্যা করছে। আপনার এপি কাস্টম শিরোনাম ব্যবহার করে আদর্শ নিদর্শন শ্লোকটি ব্যবহার করে আরও বেশি বন্ধুত্বপূর্ণ হবে hat এটি আপনাকে না ব্যবহার করার মতো কেস না বলার অপেক্ষা রাখে না, কেবল এটিই হবে শেষ সমাধান এবং এমন কিছু যা ইতিমধ্যে এইচটিটিপি স্পেক দ্বারা পরিচালিত নয়।
আপনি কখন ব্যবহার করবেন ... একটি REST API এর অনুরোধ অংশে HTTP শিরোনাম?
প্রমাণীকরণ: জিআইডি, মৌলিক প্রমাণীকরণ, কাস্টম টোকেন ইত্যাদি eg উদাহরণস্বরূপ, ব্যবহারকারীর নাম / পাসওয়ার্ডের পরিবর্তে আরআরএসটি এপিআইয়ের জন্য একটি গাইড টোকেন সহ বেসিক প্রমাণীকরণ
আপনি যদি পিসিআই-ডিএসএস বা অন্যান্য সুরক্ষা বিধি দ্বারা কভার করা ডোমেনগুলির মধ্যে টোকেন বা অন্যান্য প্রমাণীকরণের মতো তথ্যে পাস করার সাথে জড়িত হন তবে আপনাকে প্যারামিটারগুলিও সমাহিত করতে হতে পারে কারণ কিছু বিধিগুলি স্পষ্টতই ইউআরএল থেকে দূরে থাকতে প্রমাণীকরণের উপাদানগুলির প্রয়োজন হয় যা তুচ্ছ পুনরায় খেলানো হতে পারে (থেকে ব্রাউজারের ইতিহাস, প্রক্সি লগ ইত্যাদি)।
আমি কাস্টম শিরোনাম ব্যবহার করব না কারণ আপনি জানেন না যে কোনও প্রক্সি সেগুলি পাস করবে কিনা। ইউআরএল ভিত্তিক হ'ল উপায়।
জিইটি / অর্ডার / ভিউ / ক্লায়েন্ট / 23
অবশ্যই ঠিক আছে:
GET /orders/view/client_id/23 or
GET /orders/view/?client_id=23
ঠিক আছে:
GET /orders/view/23 or
আমি মনে করি এটিও ঠিক হবে:
POST /orders/view
(custom HTTP header) CLIENT_ID: 23