আপনি আমার উত্তরটি পড়ার আগে আমি বলতে চাই যে আমি @ নীলের সাথে একমত হয়েছি। আমাদের যুদ্ধ বাছাই করতে হবে। আমরা সাধারণত আমাদের সেরাটা করতে চাই, তবে কখনও কখনও আলোচনার খুব কম জায়গা থাকে এবং আমাদের ইচ্ছার বিরুদ্ধে সিদ্ধান্ত নিতে হয়।
যাইহোক, নীলের উত্তরে আমি আরও একটি জিনিস মিস করছি। ডকুমেন্টেশন । কেবল এটি নিশ্চিত করতে যে বিকাশকারীরা জানেন যে পোষ্টগুলি /search
নিরাপদে থাকার অনুরোধ করে ।
বলেছে।
1. জিইটি একটি সুযোগ দিন
GET
প্রথমে বিকল্পটি বিবেচনা করুন । এই প্রশ্নের URL টির সর্বোচ্চ দৈর্ঘ্য পরীক্ষা করে দেখুন । আপনার দীর্ঘতম ক্যোয়ারী স্ট্রিং 2000 টি অক্ষরের চেয়ে দীর্ঘ কিনা তা মূল্যায়ন করুন। যদি এটি না হয় এবং আপনি এটি হওয়ার আশা করেন না তবে সাথে যান GET
। এটি কুরুচিপূর্ণ বলে মনে হতে পারে তবে কমপক্ষে আপনি ইউআরএল বুকমার্ক করতে পারেন এবং অবশ্যই পদ্ধতিটির শব্দার্থবিজ্ঞান (আদর্শশক্তি, নিরাপদ এবং ক্যাশিং) থেকে প্রাপ্ত সমস্ত সুবিধা রয়েছে
1.1 ক্যোরির স্ট্রিংটি এনকোড করার চেষ্টা করুন
উদাহরণস্বরূপ, বেস in৪ এ Even এমনকি জাভাস্ক্রিপ্টও বেস enc৪ এনকোডিংগুলিকে সমর্থন করে ।
এটি কিভাবে এটি কাজ করে:
- সমস্ত ফিল্টার সহ জেএসএন তৈরি করুন এবং এটি স্বাভাবিক করুন।
- স্ট্রিং এ এটি পার্স করুন
- এটি এনকোড করুন
- অনুরোধ প্যারাম (
/search?q=SGVsbG8gV29ybGQh....
) হিসাবে এনকোডেড JSON প্রেরণ করুন ।
- সার্ভার সাইড তারিখে, PARAM ডিকোড কুই ।
- জেএসএন স্ট্রিংটি ডিসরিয়ালাইজ করুন
পূর্বে, দীর্ঘতম সম্ভব JSON স্ট্রিং তৈরি করুন, এটিকে এনকোড করুন এবং দৈর্ঘ্যটি নিন। এনকোডযুক্ত স্ট্রিংটি ইউআরএল ফিট করে তবে মূল্যায়ন করুন। আপনার পরীক্ষা করার জন্য আমি নীচের স্নিপেটটি Fiddle.js এ প্রয়োগ করেছি । (আমি আশা করি এটি এখনও কার্যকর হয়) 1
বেস enc৪ এনকোডগুলি নির্বিচারক এবং বিপরীতমুখী, সুতরাং সংঘর্ষের কোনও সুযোগ নেই।
এনকোডযুক্ত প্রশ্নের সাহায্যে আমরা ডিবিতে অনুসন্ধানগুলিও সংরক্ষণ করতে পারি, ইউআরএল বুকমার্ক করতে পারি, লিঙ্কগুলি ভাগ করতে পারি And
1.2 এলিয়াস দিয়ে চেষ্টা করুন
কীভাবে আরএসটি এপিআই ডিজাইন করবেন এই ব্লগটি পড়ে আমি আরও একটি বিকল্পের কথা মনে করেছি remembered সাধারণ প্রশ্নের জন্য উপাত্ত ।
আমি পরের কারণে এগুলি আকর্ষণীয় বলে মনে করি
ক্যোরির স্ট্রিংয়ের দৈর্ঘ্য ছোট করুন। এটি এপিআই ক্লিনার এবং ব্যবহারকারী বান্ধব করে তোলে
জিইটি / টিকিট /? অবস্থা = বন্ধ এবং বন্ধআট = এক্সএক্সএক্স বনাম
জিইটি / টিকিট / সম্প্রতি-বন্ধ /
আরও অ্যালিয়াস বা আরও অনুরোধের পরামিতিগুলির সাথে সম্মিলনযোগ্য।
জিইটি / টিকিট /? স্ট্যাটাস = ক্লোজড & ক্লোজডএট = এক্সএক্সএক্সএক্স এবং 30 মিমি বনাম
জিইটি / টিকিট / সম্প্রতি-বন্ধ /? = 30 মিনিটের মধ্যে
আমরা এনকোডযুক্ত ক্যোয়ারী স্ট্রিং সহ উপকরণগুলি একত্রিত করতে পারি
জিইটি / টিকিট /? স্ট্যাটাস = ক্লোজড & ক্লোজডএট = এক্সএক্সএক্স এবং = 30 মিনিট বনাম
জিইটি / টিকিট / সম্প্রতি-বন্ধ /? কিউ = এসজিভিএসবিজি 8 জি ...
1: আমি জেএসএন ব্যবহার করেছি, তবে সার্ভার-সাইডে আমরা এটির ডিজায়ালাইজ করার সাথে সাথে আমরা অন্যান্য ফর্ম্যাটগুলি ব্যবহার করতে পারি।
search?q=t
,search?q=te
,search?q=test
, ইত্যাদি। আপনার সার্ভারকে আঘাত না এড়াতে প্রায়শই কীভাবে ক্যোয়ারী প্রেরণ করা হবে তা সীমাবদ্ধ করার বিষয়টি বিবেচনা করুন। আপনি বিকল্পভাবে প্রচুর পরিমাণে তথ্য এবং ক্লায়েন্টের পক্ষ থেকে ফিল্টারিং করতে পারেন। যদি ব্যবহারকারী বিস্তৃত বিভাগগুলিতে প্রবেশ করে যা জিনিসগুলিকে ব্যাপকভাবে সঙ্কুচিত করতে পারে তবে এটি ভাল কাজ করে।