আপনি কখন পোষ্ট ব্যবহার করেন এবং কখন আপনি জিইটি ব্যবহার করেন?


343

আমি যা সংগ্রহ করতে পারি তার থেকে তিনটি বিভাগ রয়েছে:

  1. কখনও ব্যবহার GETও ব্যবহার করবেন নাPOST
  2. কখনও ব্যবহার POSTও ব্যবহার করবেন নাGET
  3. আপনি কোনটি ব্যবহার করেন তা বিবেচ্য নয়।

আমি কি এই তিনটি কেস ধরে ধরে সঠিক করছি? যদি তা হয় তবে প্রতিটি মামলা থেকে কিছু উদাহরণ কী?


1
এটি আসলে একেবারেই সত্য নয়। GET এবং POST উভয়ই একই পরিমাণে দৃশ্যমান, আপনি যদি নিজের ব্রাউজারের দ্বারা প্রেরিত শিরোনামগুলি পরীক্ষা করে দেখেন তবে আপনি যে কী-মূল্যের
জোড়


1
নামের চেয়ে বেশি এনকোড করার কোনও উপায় নেই -> কোয়েরি স্ট্রিংগুলিতে মান জোড়গুলি যাতে আপনার অনুরোধগুলি খুব বেসিক না হয় (যেমন কোনও অ্যারে বা নেস্টেড ডেটা স্ট্রাকচার নয়) আপনার কেবলমাত্র পোষ্ট বিবেচনা করা উচিত যা কোনও দেহ ক্ষেত্র সরবরাহ করে যা আপনি এনকোডিং ফর্ম্যাটগুলির সাথে ব্যবহার করতে পারেন (জেএসএন, এক্সএমএল ইত্যাদি)।
থিশাইহাই

উত্তর:


376

POSTধ্বংস (অদ্ভুত বিষয় সম্পর্কে আমি সচেতন), সম্পাদনা এবং মোছার মতো ধ্বংসাত্মক ক্রিয়াকলাপগুলির জন্য ব্যবহার করুন কারণ আপনি POSTনিজের ব্রাউজারের ঠিকানা বারে কোনও ক্রিয়া আঘাত করতে পারবেন না । GETকোনও ব্যক্তিকে অ্যাকশন কল করার অনুমতি দেওয়ার জন্য এটি নিরাপদ হলে ব্যবহার করুন । সুতরাং একটি ইউআরএল:

http://myblog.org/admin/posts/delete/357

কেবল আইটেমটি মোছার পরিবর্তে আপনাকে একটি নিশ্চিতকরণ পৃষ্ঠায় আনা উচিত। দুর্ঘটনা এড়ানো এড়ানো আরও সহজ।

POSTএর চেয়েও বেশি সুরক্ষিত GET, কারণ আপনি কোনও ইউআরএলে তথ্য আটকে রাখছেন না। এবং তাই কোনও HTML ফর্মের জন্য ব্যবহার GETকরা যা methodকোনও পাসওয়ার্ড বা অন্যান্য সংবেদনশীল তথ্য সংগ্রহ করে তা সেরা ধারণা নয় the

একটি চূড়ান্ত নোট: POSTএর চেয়ে বেশি পরিমাণে তথ্য প্রেরণ করতে পারে GET। 'জিইটি' 2048 টি অক্ষরের মধ্যে সীমাবদ্ধ থাকা অবস্থায় 'পোষ্ট' সংক্রমণিত ডেটার জন্য কোনও আকারের বাধা নেই।


82
জিইটি অনুরোধের প্রতিক্রিয়াগুলি ক্যাচ করা হতে পারে। পোষ্টগুলিতে প্রতিক্রিয়া অবশ্যই করা উচিত নয়।
mkoeller

31
ইউআরএলে থাকা তথ্যকে কীভাবে আরও সুরক্ষিত করা যায় না? (বিটিডব্লিউ, আমি তাদের মধ্যে একজন যারা বিশ্বাস করি যে সুরক্ষার কোনও মিথ্যা অনুভূতি সুরক্ষা না পাওয়ার চেয়ে বেশি বিপজ্জনক))
ইফেরো 12

42
@ ইফেরাউন: এটি অ্যাড্রেস বারে থাকা ব্যবহারকারীদের কাঁধ দেখে লোকেরা পাসওয়ার্ড পড়া বন্ধ করে দেয়।
কোয়ান্টিন

35
@ ইফেরাউন: "একটি নৈমিত্তিক পর্যবেক্ষকের কাছে কিছুটা কম ডেটা প্রকাশ করা" সম্ভবত "আরও সুরক্ষিত" এর চেয়ে আরও ভাল সূত্র হতে পারে - ইউআরএল অনেক জায়গায় লগ, রেফারার, ক্যাশে সমাপ্ত হতে পারে। আপনি অবশ্যই, ঠিক, এটি সুরক্ষা বাড়ায় না - তবে এটি সবচেয়ে নিকৃষ্টতম নিরাপত্তাহীন অভ্যাসগুলিকে সীমাবদ্ধ করে (এটি দেখুন: thedailywtf.com/Articles/The_Spider_of_Doom.aspx )
পিসকভোর

24
@ ডেভিড ডারওয়ার্ড: বা এর বেশি সাধারণ নাম: কাঁধে আক্রমণ
ইডান কে

206

সংক্ষেপে

  • অনুরোধের GETজন্য ব্যবহার করুনsafe andidempotent
  • অনুরোধের POSTজন্য ব্যবহার করুনneither safe nor idempotent

বিশদ বিবরণ প্রতিটি জন্য একটি উপযুক্ত জায়গা আছে। এমনকি আপনি যদি বিশ্রামের নীতিগুলি অনুসরণ না করেন তবে , আরইএসটি সম্পর্কে শেখার থেকে এবং কীভাবে কোনও সংস্থান ভিত্তিক দৃষ্টিভঙ্গি কাজ করে তা থেকে অনেক কিছু পাওয়া যায়।

use GETsউভয়ই অপারেশনের জন্য একটি বিশ্রামের আবেদন থাকবে safe and idempotent

একটি safeঅপারেশন হল একটি অপারেশন যা not change the dataঅনুরোধ করে।

একটি idempotentঅপারেশন এমন একটি যাতে ফলাফল আপনি be the sameযতবার এটি অনুরোধ করবেন তা বিবেচনা করবে না।

এটি কারণ হিসাবে দাঁড়ায় যে, জিইটিগুলি নিরাপদ পরিচালনার জন্য ব্যবহৃত হওয়ায় তারা স্বয়ংক্রিয়ভাবে আদর্শবানও হয় । সাধারণত একটি জিইটি হ'ল সংস্থান পুনরুদ্ধার করার জন্য ব্যবহৃত হয় (উদাহরণস্বরূপ স্ট্যাক ওভারফ্লোতে একটি প্রশ্ন এবং এর সম্পর্কিত উত্তর) বা সংস্থান সংগ্রহের জন্য।

একটি RESTful অ্যাপ্লিকেশনটি PUTsযেগুলির ক্রিয়াকলাপগুলির জন্য ব্যবহার করবে not safe but idempotent

আমি জানি প্রশ্নটি জিইটি এবং পোষ্ট সম্পর্কে ছিল, তবে আমি এক সেকেন্ডে পোস্টে ফিরে আসব।

সাধারণত একটি PUT হ'ল সংস্থান সম্পাদনের জন্য ব্যবহৃত হয় (উদাহরণস্বরূপ স্ট্যাক ওভারফ্লোতে একটি প্রশ্ন বা উত্তর সম্পাদনা)।

POSTযে কোনও অপারেশনের জন্য ব্যবহৃত হবে neither safe or idempotent

সাধারণত একটি পোষ্ট একটি নতুন সংস্থান তৈরি করতে ব্যবহৃত হয় উদাহরণস্বরূপ একটি নতুন এসও প্রশ্ন তৈরি করা (যদিও কিছু ডিজাইনে এটির জন্য একটি পুটও ব্যবহৃত হবে)।

আপনি যদি দুবার পোষ্ট চালান তবে আপনি দুটি নতুন প্রশ্ন তৈরি করবেন।

একটি অপসারণ অপারেশনও আছে, তবে আমি অনুমান করছি যে আমি এটি সেখানে ছেড়ে দিতে পারি :)

আলোচনা

ব্যবহারিক দিক থেকে আধুনিক ওয়েব ব্রাউজারগুলি সাধারণত জিইটি এবং পোষ্টকে নির্ভরযোগ্যভাবে সমর্থন করে (আপনি জাভাস্ক্রিপ্ট কলের মাধ্যমে এই সমস্ত ক্রিয়াকলাপ সম্পাদন করতে পারেন, তবে ফর্মগুলিতে ডেটা প্রবেশ করানো এবং জমা দেওয়ার জন্য আপনি দুটি বিকল্প পেয়েছেন)। একটি বিশ্রামের আবেদনে PUST প্রায়শই পুড এবং ডিলিট কলগুলি সরবরাহ করতে ওভাররাইড হয়ে যায়।

তবে, আপনি যদি বিশ্রামের নীতিগুলি অনুসরণ না করেন তবে তথ্য পুনরুদ্ধার / দেখার জন্য জিইটি এবং তথ্য তৈরি / সম্পাদনা করার জন্য পোষ্ট ব্যবহারের ক্ষেত্রে বিবেচনা করা কার্যকর হতে পারে।

আপনার কখনই কোনও অপারেশনের জন্য জিইটি ব্যবহার করা উচিত যা ডেটা পরিবর্তিত করে। কোনও অনুসন্ধান ইঞ্জিন যদি আপনার অশুভ বিকল্পটিতে একটি লিঙ্ক ক্রল করে, বা ক্লায়েন্ট বুকমার্কগুলি এটি বড় ঝামেলার বানান করতে পারে।


আপনি যদি লগইন করার জন্য APIREST উত্স তৈরি করেন যা আপনি পছন্দ করবেন, এটি নিরাপদ এবং আদর্শবান, আমি এটি অতিথি।
jhonny lopez

1
একটি নিরাপদ গেট স্বয়ংক্রিয়ভাবে আদর্শবান নয়। কোনও ধ্বংসাত্মক প্রশ্নের সাথে ফলাফল সেট আলাদা হতে পারে।
রিচিএইচএইচ

1
আপনি যেভাবে এটি লিখেছেন, "জিইটি কারেন্টটাইম" এর মতো কিছু ভুল হবে কারণ এটি আদর্শবান নয় (এই বিবেচনায় যে পুনরাবৃত্তি জিজ্ঞাসাগুলি বিভিন্ন ফলাফল দিতে পারে); প্রকৃতপক্ষে জিজ্ঞাসিত যে কোনও কিছু সময়ের সাথে পরিবর্তিত হতে পারে। তাই এক idempotence পরিপ্রেক্ষিতে বরং প্রকাশ করা উচিত পার্শ্ব প্রতিক্রিয়া ক্যোয়ারী নিজেই। যেহেতু কেবলমাত্র বর্তমান সময়ের জন্য জিজ্ঞাসা করার কোনও পার্শ্ব প্রতিক্রিয়া নেই , তাই এটি যেমন - কেউ আশা করতে পারে - জিইটি-র জন্য নিখুঁত প্রার্থী, পোস্ট নয় O
হেগেন ভন ইটজেন

79

অনুরোধটি পুনরাবৃত্তি করা আপনার আপত্তি না থাকলে GET ব্যবহার করুন (এটি হ'ল এটি রাষ্ট্র পরিবর্তন করে না)।

অপারেশন সিস্টেমের স্থিতি পরিবর্তন করে যদি POST ব্যবহার করুন।


1
যেহেতু কোনও ফর্ম সিস্টেমের স্থিতি পরিবর্তন করে, তাই HTML ফর্ম ট্যাগের ডিফল্ট পদ্ধতিটি জিইটি কেন?
ziiweb

3
@ user248959 একটি অনুসন্ধান বাক্স কি দৃশ্যমান স্থিতি পরিবর্তন করবে? ডিফল্টটি অনেক আগে স্থাপন করা হয়েছিল, সম্ভবত প্রায় দুর্ঘটনায়। পয়েন্ট বিন্দু ফর্ম একটি বিকল্প ছিল কিনা তা জানতে এমনকি আমি ইতিহাসে ডেলিভ করি নি।
ডগলাস লিডার

@ziiweb <for> ব্যবহারের বেশিরভাগ ক্ষেত্রে পোস্ট থাকলেও ড্যাফল্টকে একটি "নিরীহ" জিইটি হিসাবে সংজ্ঞায়িত করা আরও ভাল। এটি লগ ফাইল ইত্যাদিতে ডেটা উন্মুক্ত করার দিকে পরিচালিত করার পরে এটি কোনও সুরক্ষা দৃষ্টিকোণ থেকে অযৌক্তিক বলে মনে হতে পারে তবে সার্ভার-সাইড ডেটার ক্ষেত্রে এটি সার্ফ-নিরাপদ (সার্ভে কোনও জিইটি-র উপর ডেটা পরিবর্তন করতে হবে না)। আমি মনে করি, আজ কেউ আলাদাভাবে ফোকাস সেট করবে (পছন্দসই কোনও ডিফল্ট বাদ দিয়ে এবং methodবাধ্যতামূলক করে)
হেগেন ভন ইটজেন

ধরুন আমার কাছে একটি এন্ডপয়েন্ট রয়েছে যা কোনও ফাইলকে ইনপুট হিসাবে গ্রহণ করে, ফাইলটিতে কিছু প্রক্রিয়াজাত করে (উদাহরণস্বরূপ - রেজেক্সের ভিত্তিতে ডেটা উত্তোলন) এবং জেএসএন ডেটা ফেরত দেয়, তবে আমি সার্ভারে কোনও ফাইল আপলোড করার জন্য জিইটি অনুরোধটি ব্যবহার করতে পারি? বা আমার পোষ্ট অনুরোধটি ব্যবহার করা উচিত?
পরিবর্তনশীল

67

সংক্ষিপ্ত সংস্করণ

জেট: সাধারণত জমা দেওয়া অনুসন্ধানের অনুরোধগুলির জন্য ব্যবহার করা হয় বা আপনি যে কোনও অনুরোধের জন্য ব্যবহারকারীকে আবার সঠিক পৃষ্ঠাটি টানতে সক্ষম হতে চান।

জিইটির সুবিধা:

  • ইউআরএল নিরাপদে বুকমার্ক করা যেতে পারে।
  • পৃষ্ঠাগুলি নিরাপদে পুনরায় লোড করা যায়।

জিইটি এর অসুবিধাগুলি:

পোস্ট: উচ্চতর সুরক্ষা অনুরোধগুলির জন্য ব্যবহৃত হয় যেখানে ডেটাবেস কোনও ডেটাবেস, বা এমন কোনও পৃষ্ঠাতে পরিবর্তন করতে ব্যবহৃত হতে পারে যা আপনি চান না যে কেউ বুকমার্ক করতে পারে।

পোস্টের সুবিধা:

  • নাম-মান জোড়াটি url তে প্রদর্শিত হয় না। (সুরক্ষা + = 1)
  • সীমাহীন সংখ্যক নাম-মান জুটি POST এর মধ্য দিয়ে যেতে পারে। রেফারেন্স।

পোস্টের অসুবিধাগুলি:

  • POST ডেটা ব্যবহার করা পৃষ্ঠাটি বুকমার্ক হতে পারে না। (আপনি যদি চান তাই।)

দীর্ঘ সংস্করণ

সরাসরি হাইপারটেক্সট ট্রান্সফার প্রোটোকল - HTTP / 1.1 থেকে :

9.3 জিইটি

জিইটি পদ্ধতিটির অর্থ অনুরোধ-ইউআরআই দ্বারা চিহ্নিত যে কোনও তথ্য (সত্তার আকারে) সনাক্ত করা। যদি অনুরোধ-ইউআরআই কোনও ডেটা উত্পাদনকারী প্রক্রিয়াটিকে বোঝায়, তবে এটি উত্পাদিত ডেটা যা প্রতিক্রিয়াতে সত্তা হিসাবে ফিরে আসবে এবং প্রক্রিয়াটির উত্স পাঠ্য নয়, যদি না যে পাঠ্যটি প্রক্রিয়াটির আউটপুট না ঘটে।

জিইটি পদ্ধতির শব্দার্থতাকে একটি "শর্তসাপেক্ষে জিইটি" তে পরিবর্তিত করা হয় যদি অনুরোধ বার্তায় একটি যদি-সংশোধিত-যেহেতু, যদি-আনমোডাইফাইড-ইজ, যদি-ম্যাচ, যদি-না-ম্যাচ হয়, বা যদি-রেঞ্জ শিরোনাম ক্ষেত্র থাকে। শর্তসাপেক্ষে জিইটি পদ্ধতি অনুরোধ করে যে সত্তাটি কেবলমাত্র শর্তাধীন শিরোনাম ক্ষেত্র (গুলি) দ্বারা বর্ণিত পরিস্থিতিতেই স্থানান্তরিত হয়। শর্তসাপেক্ষে জিইটি পদ্ধতিটি একাধিক অনুরোধের প্রয়োজন ছাড়াই বা ক্লায়েন্টের হাতে থাকা ডেটা স্থানান্তর না করে ক্যাশেড সত্তাগুলিকে রিফ্রেশ করার অনুমতি দিয়ে অপ্রয়োজনীয় নেটওয়ার্কের ব্যবহার হ্রাস করার উদ্দেশ্যে।

অনুরোধ বার্তায় একটি ব্যাপ্তি শিরোলেখ ক্ষেত্র অন্তর্ভুক্ত করা থাকলে GET পদ্ধতির শব্দার্থতাকে একটি "আংশিক GET" তে পরিবর্তিত করে। একটি আংশিক জিইটি অনুরোধ করে যে সত্ত্বার কেবলমাত্র অংশটি স্থানান্তর করা হবে, যেমন বিভাগ 14.35 তে বর্ণিত হয়েছে described আংশিক জিইটি পদ্ধতিটি ক্লায়েন্টের হাতে থাকা ডেটা স্থানান্তর না করে আংশিক-পুনরুদ্ধারকৃত সত্তাগুলি সম্পূর্ণ করার অনুমতি দিয়ে অপ্রয়োজনীয় নেটওয়ার্কের ব্যবহার হ্রাস করার উদ্দেশ্যে।

একটি জিইটি অনুরোধের প্রতিক্রিয়া ক্যাশেযোগ্য যদি কেবল এবং যদি এটি বিভাগে 13 টিতে বর্ণিত এইচটিটিপি ক্যাচিংয়ের প্রয়োজনীয়তা পূরণ করে।

ফর্মগুলির জন্য ব্যবহারের সময় সুরক্ষা বিবেচনার জন্য বিভাগ 15.1.3 দেখুন।

9.5 পোস্ট

POST পদ্ধতিটি অনুরোধ-লাইনে অনুরোধ-ইউআরআই দ্বারা চিহ্নিত রিসোর্সের নতুন অধস্তন হিসাবে অনুরোধে সংযুক্ত সত্তাকে গ্রহণ করার অনুরোধের জন্য উত্স সার্ভারটি অনুরোধ করতে ব্যবহৃত হয়। পোষ্টটি একটি অভিন্ন পদ্ধতি নিম্নলিখিত ফাংশনগুলি আবরণ করার জন্য ডিজাইন করা হয়েছে:

  • বিদ্যমান সংস্থার টিকা;

  • বুলেটিন বোর্ড, নিউজ গ্রুপ, মেলিং তালিকা বা অনুরূপ গ্রুপের নিবন্ধগুলিতে বার্তা পোস্ট করা;

  • ডেটা হ্যান্ডলিং প্রক্রিয়াতে কোনও ফর্ম জমা দেওয়ার ফলাফল হিসাবে ডেটাগুলির একটি ব্লক সরবরাহ করা;

  • অ্যাপেন্ড অপারেশনের মাধ্যমে একটি ডাটাবেস প্রসারিত করা।

POST পদ্ধতি দ্বারা সম্পাদিত আসল ফাংশনটি সার্ভার দ্বারা নির্ধারিত হয় এবং সাধারণত অনুরোধ-ইউআরআই-র উপর নির্ভরশীল। পোস্ট সত্তা সেই ইউআরআই-র সাথে অধঃস্তন হয় যেমন কোনও ফাইল যেমন কোনও ডিরেক্টরিতে অন্তর্ভুক্ত থাকে তখন কোনও সংবাদ নিবন্ধ এটি পোস্ট করা নিউজগ্রুপটির অধীনস্থ হয়, বা একটি রেকর্ড একটি ডাটাবেসের অধীনস্থ হয়।

পোস্ট পদ্ধতি দ্বারা সম্পাদিত ক্রিয়াকলাপের ফলে এমন কোনও সংস্থান দেখা যায় না যা কোনও ইউআরআই দ্বারা চিহ্নিত করা যায়। এই ক্ষেত্রে, 200 (ঠিক আছে) বা 204 (কোনও বিষয়বস্তু নয়) উপযুক্ত প্রতিক্রিয়ার স্থিতি, প্রতিক্রিয়ার ফলাফলটি বর্ণনা করে এমন কোনও সত্তা অন্তর্ভুক্ত কিনা তা নির্ভর করে।


2
"যে পৃষ্ঠায় পোস্ট ডেটা ব্যবহার করা হত সেগুলি বুকমার্ক করা যায় না": ভাল, এটি একটি সুবিধা, না? আপনি সম্ভবত চান না যে আপনার ডেটা-পরিবর্তনকারী ক্যোয়ারিকে বুকমার্ক করা হোক।
পিসকভোর

আমি মনে করি প্রতিবারের পোস্টটি যদি আপনি কোনও সুরক্ষিত চালিত উদ্দেশ্যে ব্যবহার করে থাকেন তবে এই সুবিধা হবে। সাধারণত এটি হয় তবে জিইটি-তে দৈর্ঘ্যের সীমা থাকে। হতে পারে, কেউ সবেমাত্র সুরক্ষা সম্পর্কিত ডেটা এক টন পার করছেন এবং পৃষ্ঠাটি বুকমার্ক করাতে চান? কে জানে ...
দুর্বলতা

জিইটি-র একটি অসুবিধা সম্পর্কে, যথা "নামগুলি মূল্য সংযুক্ত হিসাবে ইউআরএল দিয়ে ভেরিয়েবলগুলি বিরাম দেওয়া হয়", এমভিসি কি রাউটিং এবং ফলস্বরূপ বন্ধুত্বপূর্ণ ইউআরএলগুলির কারণে এই সমস্যাটি দূর করবে?
মিঃবোজঙ্গলস

@ এমআরবোজ্যাঙ্গেলস: দুর্দান্ত ইউআরএলগুলি ব্যবহার করা 'কাঁধের ওপরে তাকাতে থাকা ব্যক্তি'কে ঝুঁকিপূর্ণ বলে আটকায় না। পার্শ্ব নোট: এমভিসির জন্য দুর্দান্ত ইউআরএলগুলির সাথে রাউটিংয়ের প্রয়োজন হয় না এবং দুর্দান্ত ইউআরএলগুলির সাথে রাউটিংয়ের জন্য এমভিসি প্রয়োজন হয় না; এগুলি কখনও কখনও একসাথে ব্যবহৃত হয় তবে আলাদাভাবেও ব্যবহার করা যায়।
icttoofay

.NET বিশ্বে, সমস্ত ব্যবহারিক উদ্দেশ্যে, দুর্দান্ত ইউআরএল ক্ষমতা = এমভিসি। আমি মনে করি আপনি কিছু আইআইএস পুনর্লিখন বা কিছু অদ্ভুত কোড-ভিত্তিক করতে পারেন তবে সেগুলি আরও কম আনন্দদায়ক। জয়ের জন্য এমভিসি, বলা বাহুল্য।
মিঃবোজঙ্গলস

28

প্রথম গুরুত্বপূর্ণ জিনিসটি জিইটি বনাম পোষ্টের অর্থ :

  • GET ব্যবহার করা উচিত ... পেতে ... সার্ভার থেকে কিছু তথ্য ,
  • পোস্ট কিছু তথ্য পাঠাতে ব্যবহার করা উচিত যখন থেকে সার্ভার।


এর পরে, কয়েকটি জিনিস যা লক্ষ্য করা যায়:

  • জিইটি ব্যবহার করে আপনার ব্যবহারকারীরা তাদের ব্রাউজারে "পিছনে" বোতামটি ব্যবহার করতে পারেন এবং তারা পৃষ্ঠাগুলি বুকমার্ক করতে পারেন
  • আপনি জিইটি হিসাবে পাস করতে পারেন এমন প্যারামিটারগুলির আকারের একটি সীমা রয়েছে (ইন্টারনেট এক্সপ্লোরারের কিছু সংস্করণের জন্য 2KB, যদি আমি ভুল না করি) ; সীমাটি পোস্টের জন্য অনেক বেশি, এবং সাধারণত সার্ভারের কনফিগারেশনের উপর নির্ভর করে।


যাইহোক, আমি ভাবি না যে আমরা জিইটি ব্যতীত "বেঁচে থাকতে" পারি: আপনি ক্যোরি স্ট্রিংয়ের প্রতিটি প্যারামিটার সহ প্রতিদিন কতগুলি ইউআরএল ব্যবহার করছেন তা ভেবে দেখুন - জিইটি ব্যতীত, সেগুলি কার্যকর হবে না ;-)


ঠিক আছে, যদি সবাই জিইটি স্টাইলে সুন্দর-ইউআরএল ব্যবহার করত: http://example.com/var1/value1/var2/value2/var3/value3আমরা 'প্রযুক্তিগতভাবে' আর পেতে পারি না ...
টাইলার কার্টার

5
@ Chacha102 ব্যতীত আপনার এখনও সেই সংস্থানটি পেতে হবে। জিইটি ব্যবহার করে প্রায় সমস্ত পৃষ্ঠা, চিত্র, স্ক্রিপ্ট ইত্যাদি ওয়েব ব্রাউজারগুলিতে লোড হয়।
রায়ান

3
@ চাচা ১০২২ - এমনকি ব্যবহারগুলি www.mypage.com/contact/অভ্যন্তরীণভাবে এমন কিছুতে পানindex.php?url=/contact/
থিয়াগো বেলেম

1
জিইটির আকারের সীমাতে জোর দেওয়া! এছাড়াও, জিইটি প্যারামিটারগুলি বুকমার্কগুলিতে অন্তর্ভুক্ত থাকে, যখন পোষ্ট হয় না। এবং, ব্যবহারকারী একটি জিইটি-অনুরোধ করা পৃষ্ঠাটি রিফ্রেশ করতে পারে তবে কোনও পোষ্ট-অনুরোধকৃত পৃষ্ঠা নয় (তথ্য পুনরায় পাঠানোর বিষয়ে সতর্কতা ছাড়াই)।
রিকিট

12

অনেক ওয়েব ব্রাউজারে দৈর্ঘ্যের সীমাবদ্ধতা পার্থক্য ছাড়াও একটি অর্থগত পার্থক্য রয়েছে। জিইটিগুলি "নিরাপদ" বলে মনে করা হচ্ছে যে তারা কেবল পঠনযোগ্য ক্রিয়াকলাপ যা সার্ভারের স্থিতি পরিবর্তন করে না। পোষ্টগুলি সাধারণত রাষ্ট্র পরিবর্তন করবে এবং পুনরায় জমা দেওয়ার বিষয়ে সতর্কতা দেবে। অনুসন্ধান ইঞ্জিনগুলির ওয়েব ক্রলারগুলি জিইটি তৈরি করতে পারে তবে কখনও পোষ্ট তৈরি করা উচিত নয়।

রাষ্ট্র পরিবর্তন না করে ডেটা পড়তে চাইলে GET ব্যবহার করুন এবং আপনি সার্ভারে রাষ্ট্র আপডেট করতে চাইলে POST ব্যবহার করুন।


+1 টি। এটি আরএফসি থেকে মূল ধারণাগত পার্থক্য যা অন্য সমস্ত কিছুই অনুসরণ করে। w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3
ফ্রাঙ্ক ফার্মার

8

থাম্বের আমার সাধারণ নিয়মটি হ'ল আপনি যখন সার্ভারে অনুরোধ করছেন তখন যে স্থিতি পরিবর্তন হয় না। পোস্টগুলি সার্ভারের অনুরোধের জন্য সংরক্ষণ করা হয় যা স্থিতি পরিবর্তন করে।


8

একটি ব্যবহারিক পার্থক্য হ'ল ব্রাউজারগুলি এবং ওয়েবসার্সগুলির একটি ইউআরএলে উপস্থিত অক্ষরগুলির সংখ্যার সীমা থাকে। এটি প্রয়োগ থেকে প্রয়োগের ক্ষেত্রে আলাদা, তবে আপনি যদি textareaআপনার ফর্মগুলি পেয়ে থাকেন তবে এটি অবশ্যই আঘাত করা সম্ভব ।

জিইটিগুলির সাথে আরও একটি গোচা - তারা অনুসন্ধান ইঞ্জিন এবং অন্যান্য স্বয়ংক্রিয় সিস্টেম দ্বারা সূচিযুক্ত হয়। গুগলের একসময় এমন একটি পণ্য ছিল যা আপনি যে পৃষ্ঠাটিতে দেখছিলেন সেগুলিতে লিঙ্কগুলি পূর্ববর্তী সময়ে আনবে, সুতরাং আপনি যদি এই লিঙ্কগুলিতে ক্লিক করেন তবে লোড করা তারা দ্রুততর হবে। এটির মতো লিঙ্কযুক্ত সাইটগুলিতে এটি বড় ধরনের সর্বনাশ ঘটিয়েছিল delete.php?id=1- লোকেরা তাদের সম্পূর্ণ সাইটগুলি হারাতে পেরেছে ।


1
আপনার ওয়েবসারভার সম্ভবত এটিরও সীমাবদ্ধতা রয়েছে।
বিলি ওনিল

ওয়েল, পাশাপাশি পোস্টের একটি সীমা আছে।
চেলমার্টজ

1
দ্য গ্রেট পয়েন্ট, @ বিলিওনসিল, আমি এটি যোগ করেছি @ @ চেলমার্টজ হ্যাঁ, তবে আমি চাইলে এটি পরিবর্তন করতে পারি, এবং এটি আরও বেশি। উদাহরণস্বরূপ, আমি অ্যাপাচি উদাহরণগুলিতে 1 গিগাবাইট ফাইল পোস্ট করেছি।
ceejayoz

আমি ইউআরএলগুলি অনুসন্ধান ইঞ্জিনগুলির দ্বারা সূচীভূত হওয়া বুঝতে পারি। জিইটি-র সাথে কী করার আছে তা আমি বুঝতে পারি না। মানে একটি ইউআরএল কেবল একটি ইউআরএল নয়?
মধু

1
@ মধু অনুসন্ধান ইঞ্জিনগুলি লিঙ্কগুলি অনুসরণ করে। লিঙ্কগুলি জিইটি অনুরোধ করে। অনুসন্ধান ইঞ্জিনগুলি ফর্মগুলি জমা দেয় না (যদি তারা তা করে থাকে তবে আপনি গুগলকে প্রতি কয়েকদিন আপনার সাইটে কোনও অ্যাকাউন্টের জন্য সাইন আপ করতে দেখবেন) এবং এইভাবে কোনও পোষ্ট অনুরোধ করবেন না।
ceejayoz

7

আপনি পৃষ্ঠার অবস্থা প্রতিফলিত করতে URL টি চাইলে GET ব্যবহার করুন। এটি এখানে প্রদর্শিত পাতার মতো গতিময় উত্পন্ন পৃষ্ঠাগুলি দেখার জন্য দরকারী। তথ্য জমা দেওয়ার জন্য একটি পোষ্ট একটি ফর্ম ব্যবহার করা উচিত, যেমন আমি যখন "আপনার উত্তর পোস্ট করুন" বোতামটি ক্লিক করি। এটি ক্লিনার ইউআরএলও তৈরি করে কারণ এটি পথের পরে কোনও প্যারামিটার স্ট্রিং তৈরি করে না।


6

জিইটিগুলি সম্পূর্ণরূপে ইউআরএল হওয়ায় এগুলি ওয়েব ব্রাউজার দ্বারা ক্যাশে করা যায় এবং ধারাবাহিকভাবে উত্পন্ন চিত্রগুলির মতো জিনিসগুলির জন্য আরও ভাল ব্যবহার করা যেতে পারে। (একটি মেয়াদোত্তীর্ণ সময় সেট করুন)

গ্রাভাটার পৃষ্ঠা থেকে একটি উদাহরণ: http://www.gravatar.com/avatar/4c3be63a4c2f539b013787725dfce802?d=monsterid

কিছুটা ভাল পারফরম্যান্স পেতে পারেন, কিছু ওয়েবসার্স হ্যান্ডলারের অনুরোধের আগে একটি অস্থায়ী ফাইলে POST বিষয়বস্তু লিখেন।

আর একটি বিষয় বিবেচনা করার জন্য হ'ল আকারের সীমা। জিইটিগুলি ইউআরএল আকারের দ্বারা ক্যাপড হয়, 1024 বাইট স্ট্যান্ডার্ড অনুসারে, যদিও ব্রাউজারগুলি আরও সমর্থন করতে পারে।

এর চেয়ে বেশি ডেটা স্থানান্তর করার জন্য আরও ভাল ব্রাউজারের সামঞ্জস্যতা পেতে একটি POST ব্যবহার করা উচিত।

এই সীমাটির চেয়েও কম সমস্যা, অন্য পোস্টার যেমন লিখেছেন, ইউআরএল-এ থাকা যে কোনও কিছুই ইতিহাসের মতো ব্রোভারের ইউআইয়ের অন্যান্য অংশে শেষ হতে পারে।


4

আপনি প্রতি-সে-করতে পারবেন না এমন কিছুই নেই। মুল বক্তব্যটি হ'ল আপনি এইচটিটিপি জিইটি-তে সার্ভারের স্থিতি পরিবর্তন করার কথা নয় । এইচটিটিপি প্রক্সিগুলি ধরে নিয়েছে যেহেতু এইচটিটিপি জিইটি রাষ্ট্র পরিবর্তন করে না তবে কোনও ব্যবহারকারী এইচটিটিপি জিইটি একবারে বা 1000 বার ডাকবে কিনা তাতে কোনও পার্থক্য নেই। এই তথ্য ব্যবহার করে তারা ধরে নিয়েছে যে প্রথম এইচটিটিপি জিইটির একটি ক্যাশেড সংস্করণ ফিরিয়ে দেওয়া নিরাপদ। আপনি যদি এইচটিটিপি স্পেসিফিকেশনটি ভঙ্গ করেন তবে আপনি বুনোতে এইচটিটিপি ক্লায়েন্ট এবং প্রক্সি ভেঙে যাওয়ার ঝুঁকি ফেলছেন। এটা করবেন না :)


এটি কেবল ব্রাউজারই নয় যে জিইটি নিরাপদ এবং আদর্শবান হিসাবে গণ্য হয়: সার্চ ইঞ্জিন মাকড়সা এবং প্রিফেচিং ব্রাউজারগুলি (ফাস্টফক্সের মতো )ও এই উপর নির্ভর করে।
ফ্রাঙ্ক ফার্মার

@ গিলি, শেষ পর্যন্ত সঠিক উত্তর সহ কেউ। আমি সত্যিই অবাক হয়েছি যে কতজন লোক এটির ভুল করেছে। থাম্বস আপ!
lubos hasko

4

এটি আরইএসটি-র ধারণাটিতে এবং কীভাবে ওয়েবটি ব্যবহার করার জন্য কী ধরনের পরিকল্পনা করা হয়েছিল তা আবিষ্কার করে। সফটওয়্যার ইঞ্জিনিয়ারিং রেডিওতে একটি দুর্দান্ত পডকাস্ট রয়েছে যা গেট এবং পোস্ট ব্যবহারের বিষয়ে গভীর আলোচনা করে।

সার্ভার থেকে ডেটা টানতে গেট ব্যবহার করা হয়, যেখানে আপডেট ক্রিয়নের প্রয়োজন হবে না। ধারণাটি হ'ল আপনি একই জিইটি অনুরোধটি বারবার ব্যবহার করতে সক্ষম হবেন এবং একই তথ্য ফিরে আসবেন। ইউআরএলটিতে ক্যোয়ারী স্ট্রিংয়ের প্রাপ্ত তথ্য রয়েছে, কারণ এটি বোঝানো হয়েছিল যে সহজেই অন্য সিস্টেমগুলিতে এবং লোকেরা যেখানে কোনও সন্ধান করতে পারে তার ঠিকানার মতো পাঠানো যায়।

সার্ভারের কাছে তথ্য ঠেকাতে / সার্ভারকে কোনও ক্রিয়া সম্পাদন করার জন্য বলার জন্য পোস্টটি কমপক্ষে আরআরটি আর্কিটেকচার দ্বারা ব্যবহৃত হবে বলে মনে করা হচ্ছে। উদাহরণস্বরূপ: এই ডেটা আপডেট করুন, এই রেকর্ড তৈরি করুন।


"সফটওয়্যার ইঞ্জিনিয়ারিং রেডিওতে একটি দুর্দান্ত পডকাস্ট রয়েছে যা গেট এবং পোস্ট ব্যবহারের বিষয়ে গভীর আলোচনা করে" " এটা কোথায়?
ইয়েইন

আমি এর সাথে একটি লিঙ্ক যুক্ত করেছি।
কেমিলার2002

এই লিঙ্কটিটি এখানে: se-radio.net/2008/05/ep प्रकरण-98-stefan-tilkov-on-rest আমি উপরের লিঙ্কটিও সম্পাদনা করেছি, যদিও আমার সম্পাদনা করার অধিকার নেই এবং এটি পিয়ার-পর্যালোচনা হওয়া উচিত, ইত্যাদি etc.
মিঃবোজঙ্গলস

ধরুন আমার কাছে একটি এন্ডপয়েন্ট রয়েছে যা কোনও ফাইলকে ইনপুট হিসাবে গ্রহণ করে, ফাইলটিতে কিছু প্রক্রিয়াজাত করে (উদাহরণস্বরূপ - রেজেক্সের ভিত্তিতে ডেটা উত্তোলন) এবং জেএসএন ডেটা ফেরত দেয়, তবে আমি সার্ভারে কোনও ফাইল আপলোড করার জন্য জিইটি অনুরোধটি ব্যবহার করতে পারি? নাকি আমার পোষ্টের অনুরোধটি ব্যবহার করা উচিত?
পরিবর্তনশীল

4

1.3 HTTP GETবা চয়ন করার জন্য দ্রুত চেকলিস্টPOST

GET ব্যবহার করুন যদি:

    The interaction is more like a question (i.e., it is a safe operation such as a query, read operation, or lookup).

পোস্ট ব্যবহার করুন যদি:

    The interaction is more like an order, or
    The interaction changes the state of the resource in a way that the user would perceive (e.g., a subscription to a service), or
    The user be held accountable for the results of the interaction.

উত্স


3

get get ব্যবহার করে আমি কোনও সমস্যা দেখতে পাচ্ছি না, আমি এটিকে সহজ জিনিসগুলির জন্য ব্যবহার করি যেখানে কোয়েরি স্ট্রিংয়ে জিনিস রাখার অর্থ হয়।

রাষ্ট্র আপডেট করার জন্য এটি ব্যবহার করা - delete.php?id=5কোনও পৃষ্ঠা মুছার জন্য জিইটি-র মতো - খুব ঝুঁকিপূর্ণ। লোকেরা খুঁজে পেল যে যখন গুগলের ওয়েব এক্সিলিটর পৃষ্ঠাগুলিতে ইউআরএলগুলির পূর্বনির্ধারণ শুরু করেছিল - এটি সমস্ত 'মোছা' লিঙ্কগুলিতে আঘাত করে এবং লোকদের ডেটা মুছে দেয়। সার্চ ইঞ্জিন মাকড়সাগুলির সাথে একই জিনিস ঘটতে পারে।


3

জিইটি পারে না এমন সময় পোষ্ট বড় ডেটা স্থানান্তর করতে পারে।

তবে সাধারণত এটি জিইটির সংক্ষিপ্তকরণের কথা নয়, বরং আপনি যদি নিজের ওয়েবসাইট / ওয়েব অ্যাপসটি সুন্দরভাবে আচরণ করতে চান তবে কোনও কনভেনশন।

কটাক্ষপাত আছে http://www.w3.org/2001/tag/doc/whenToUseGet.html


3

আরএফসি 2616 থেকে :

9.3 জিইটি
পদ্ধতিটি জিইটি পদ্ধতিটির অর্থ অনুরোধ-ইউআরআই দ্বারা চিহ্নিত যে কোনও তথ্য (সত্তার আকারে) সনাক্ত করা। যদি অনুরোধ-ইউআরআই কোনও ডেটা উত্পাদনকারী প্রক্রিয়াটিকে বোঝায়, তবে এটি উত্পাদিত ডেটা যা প্রতিক্রিয়াতে সত্তা হিসাবে ফিরে আসবে এবং প্রক্রিয়াটির উত্স পাঠ্য নয়, যদি না যে পাঠ্যটি প্রক্রিয়াটির আউটপুট না ঘটে।


9.5 পোস্ট
পোষ্ট পদ্ধতিটি অনুরোধ-লাইনে অনুরোধ-ইউআরআই দ্বারা চিহ্নিত রিসোর্সের নতুন অধীনস্থ হিসাবে অনুরোধে আবদ্ধ সংস্থাকে স্বীকৃতি দেওয়ার জন্য অনুরোধ করার জন্য পোষ্ট পদ্ধতিটি ব্যবহার করা হয়। পোষ্টটি একটি অভিন্ন পদ্ধতি নিম্নলিখিত ফাংশনগুলি আবরণ করার জন্য ডিজাইন করা হয়েছে:

  • বিদ্যমান সংস্থার টিকা;
  • বুলেটিন বোর্ড, নিউজ গ্রুপ, মেলিং তালিকা বা অনুরূপ গ্রুপের নিবন্ধগুলিতে বার্তা পোস্ট করা;
  • ডেটা হ্যান্ডলিং প্রক্রিয়াতে কোনও ফর্ম জমা দেওয়ার ফলাফল হিসাবে ডেটাগুলির একটি ব্লক সরবরাহ করা;
  • অ্যাপেন্ড অপারেশনের মাধ্যমে একটি ডাটাবেস প্রসারিত করা।

POST পদ্ধতি দ্বারা সম্পাদিত আসল ফাংশনটি সার্ভার দ্বারা নির্ধারিত হয় এবং সাধারণত অনুরোধ-ইউআরআই-র উপর নির্ভরশীল। পোস্ট সত্তা সেই ইউআরআই-র সাথে অধঃস্তন হয় যেমন কোনও ফাইল যেমন কোনও ডিরেক্টরিতে অন্তর্ভুক্ত থাকে তবে কোনও সংবাদ নিবন্ধ এটি পোস্ট করা নিউজগ্রুপটির অধীনস্থ হয়, বা একটি রেকর্ড একটি ডাটাবেসের অধীনস্থ হয়।

পোস্ট পদ্ধতি দ্বারা সম্পাদিত ক্রিয়াকলাপের ফলে এমন কোনও সংস্থান দেখা যায় না যা কোনও ইউআরআই দ্বারা চিহ্নিত করা যায়। এই ক্ষেত্রে, 200 (ঠিক আছে) বা 204 (কোনও বিষয়বস্তু নয়) উপযুক্ত প্রতিক্রিয়ার স্থিতি, প্রতিক্রিয়ার ফলাফলটি বর্ণনা করে এমন কোনও সত্তা অন্তর্ভুক্ত কিনা তা নির্ভর করে।


2

যখন লোকেরা কোয়েরিস্ট্রিং দেখতে না পায় বা কোয়েরি স্ট্রিং বড় হয় তখন আমি পোস্টটি ব্যবহার করি। এছাড়াও ফাইল আপলোডগুলির জন্য পোস্ট দরকার।

যদিও জিইটি ব্যবহার করে আমি কোনও সমস্যা দেখতে পাচ্ছি না, আমি এটি সহজ জিনিসগুলির জন্য ব্যবহার করি যেখানে কোয়েরি স্ট্রিংয়ে জিনিস রাখার অর্থ হয়।

জিইটি ব্যবহারের ফলে কোনও নির্দিষ্ট পৃষ্ঠায় লিঙ্ক করা সম্ভব হবে যেখানে পোস্ট কাজ করবে না।


আমরা ফাইল আপলোডের জন্য জিইটি ব্যবহার করতে পারি না কেন?
পরিবর্তনশীল

1

আসল উদ্দেশ্যটি হ'ল জিইটি ডেটা ফেরত পাওয়ার জন্য ব্যবহৃত হয়েছিল এবং পোস্টটি হ'ল কিছু হতে পারে। আমি যে থাম্বটি ব্যবহার করি তার নিয়মটি হ'ল আমি যদি সার্ভারে কোনও কিছু প্রেরণ করি তবে আমি পোস্ট ব্যবহার করি। আমি যদি ডেটা ফেরত পাওয়ার জন্য কেবল কোনও ইউআরএল কল করি তবে আমি জিইটি ব্যবহার করি।


1

উইকিপিডিয়ায় এইচটিটিপি সম্পর্কে নিবন্ধটি পড়ুন । এটি প্রোটোকল কী এবং এটি কী করে তা ব্যাখ্যা করবে:

পাওয়া

নির্দিষ্ট সংস্থানটির উপস্থাপনের জন্য অনুরোধ করে। নোট করুন যে GET টি অপারেশনগুলির জন্য ব্যবহার করা উচিত নয় যা পার্শ্ব প্রতিক্রিয়া সৃষ্টি করে, যেমন ওয়েব অ্যাপ্লিকেশনগুলিতে পদক্ষেপ নেওয়ার জন্য এটি ব্যবহার করা। এর একটি কারণ হ'ল জিইটি রোবট বা ক্রলারের দ্বারা নির্বিচারে ব্যবহার করা যেতে পারে, যা কোনও অনুরোধের কারণে হওয়া পার্শ্ব প্রতিক্রিয়াগুলি বিবেচনা করার প্রয়োজন নেই।

এবং

পোস্ট প্রক্রিয়া করার জন্য ডেটা জমা দেয় (উদাহরণস্বরূপ, একটি HTML ফর্ম থেকে) চিহ্নিত সংস্থানটিতে identified অনুরোধের মুখ্য অংশে ডেটা অন্তর্ভুক্ত করা হয়েছে। এর ফলে নতুন সংস্থান তৈরি হতে পারে বা বিদ্যমান সংস্থানসমূহ বা উভয় আপডেট হতে পারে।

ডাব্লু 3 সি এর ইউআরআই, অ্যাড্রেসিবিলিটি এবং একটি HTTP জিইটি এবং পোষ্টের ব্যবহারের একটি নথি রয়েছে যা কখন কী ব্যবহার করতে হবে তা ব্যাখ্যা করে। Citing

১.৩ HTTP GET বা পোস্ট চয়ন করার জন্য দ্রুত চেকলিস্ট

  • GET ব্যবহার করুন যদি:
    • মিথস্ক্রিয়াটি একটি প্রশ্নের মতো (যেমন, এটি একটি নিরাপদ অপারেশন যেমন একটি ক্যোয়ারী, পঠন অপারেশন বা লুকআপ)।

এবং

  • পোস্ট ব্যবহার করুন যদি:
    • ইন্টারঅ্যাকশনটি আরও একটি আদেশের মতো, বা
    • কথোপকথনটি এমনভাবে রিসোর্সের স্থিতি পরিবর্তন করে যে ব্যবহারকারী বুঝতে পারে (উদাহরণস্বরূপ, কোনও পরিষেবাদির সাবস্ক্রিপশন), বা ইন্টারঅ্যাকশনটির ফলাফলের জন্য ব্যবহারকারীকে দায়বদ্ধ রাখা হবে।

তবে, এইচটিটিপি জিইটি বা পোষ্ট ব্যবহারের চূড়ান্ত সিদ্ধান্তের আগে, দয়া করে সংবেদনশীল ডেটা এবং ব্যবহারিক বিবেচনার জন্য বিবেচনা বিবেচনা করুন।

আপনি যখনই কোনও এইচএমএল ফর্ম জমা দেন তখন একটি আদর্শ উদাহরণ। আপনি যে কোনও পোস্ট নির্দিষ্ট করেছেন বা ফর্ম ক্রিয়াটির জন্য পাবেন । পিএইচপি সেই অনুযায়ী $ _GET এবং $ _POST জনবসতি করবে।


1

পিএইচপি-তে, POSTডেটা সীমাটি সাধারণত আপনার দ্বারা সেট থাকে php.iniGETআমি বিশ্বাস করি সার্ভার / ব্রাউজার সেটিংস দ্বারা সীমাবদ্ধ - সাধারণত 255বাইটসের চারপাশে ।


1

W3schools.com থেকে :

এইচটিটিপি কি?

হাইপারটেক্সট ট্রান্সফার প্রোটোকল (এইচটিটিপি) ক্লায়েন্ট এবং সার্ভারের মধ্যে যোগাযোগ সক্ষম করার জন্য ডিজাইন করা হয়েছে।

HTTP ক্লায়েন্ট এবং সার্ভারের মধ্যে একটি অনুরোধ-প্রতিক্রিয়া প্রোটোকল হিসাবে কাজ করে।

ওয়েব ব্রাউজারটি ক্লায়েন্ট হতে পারে এবং কোনও কম্পিউটারে কোনও অ্যাপ্লিকেশন যা কোনও ওয়েব সাইট হোস্ট করে তা সার্ভার হতে পারে।

উদাহরণ: একটি ক্লায়েন্ট (ব্রাউজার) সার্ভারে একটি HTTP অনুরোধ জমা দেয়; তারপরে সার্ভার ক্লায়েন্টকে একটি প্রতিক্রিয়া দেয়। প্রতিক্রিয়াটিতে অনুরোধ সম্পর্কে স্থিতির তথ্য থাকে এবং এতে অনুরোধ করা সামগ্রী থাকতে পারে।

দুটি HTTP অনুরোধের পদ্ধতি: GET এবং পোস্ট করুন and

একটি ক্লায়েন্ট এবং সার্ভারের মধ্যে একটি অনুরোধ-প্রতিক্রিয়া জন্য সাধারণত দুটি ব্যবহৃত পদ্ধতি হ'ল GET এবং পোস্ট O

জিইটি - একটি নির্দিষ্ট সংস্থান থেকে তথ্য অনুরোধ করুন পোস্ট - নির্দিষ্ট সংস্থায় প্রক্রিয়া করার জন্য ডেটা জমা দেয়

এখানে আমরা প্রধান পার্থক্যগুলি পৃথক করে:

এখানে চিত্র বর্ণনা লিখুন


1
অনুসন্ধানকারী এবং পাঠকদের উত্তরে চিত্রের বিষয়বস্তু প্রবেশ করানো আরও ভাল। এছাড়াও, উত্তরের প্রথম অংশটি প্রশ্নের উত্তরটিতে সত্যই সহায়তা করে না।
ডেভ শোয়েসগুথ

এখান থেকে অনুলিপি করুন - আপনার উত্সটি যথাযথভাবে উদ্ধৃত করতে হবে এবং উত্সের লাইসেন্স অবশ্যই পুনরায় ব্যবহারের অনুমতি দেবে, যা আমি মনে করি না w3 স্কুলগুলি করে। এগুলি ছাড়াও, আপনি কি সত্যিই ভাবেন যে এটি এমন কিছু যুক্ত করে যা অন্য 25 টি উত্তরের মধ্যে অন্তর্ভুক্ত ছিল না?
বেনিয়ামিন ডাব্লু

1

পোস্টের সহজ সংস্করণ পুট মুছে ফেলুন

  • জিইটি ব্যবহার করুন - যখন আপনি কোনও আইডি বা নামের উপর ভিত্তি করে ডেটার তালিকার মতো কোনও সংস্থান পেতে চান
  • পোস্ট ব্যবহার করুন - যখন আপনি সার্ভারে কোনও ডেটা প্রেরণ করতে চান। মনে রাখবেন পোষ্ট ভারী ওজন অপারেশন কারণ আপডেট করার জন্য আমাদের অভ্যন্তরীণভাবে পোষ্টের পরিবর্তে পুট ব্যবহার করা উচিত পোস্টটি নতুন সংস্থান তৈরি করবে
  • পুট ব্যবহার করুন - আপনি যখন

4
"পুট ব্যবহার করুন - আপনি যখন" বাক্যটি বাকী কোথায়?
পাং

এটি দুর্দান্ত যে কেউ এই উত্তরটির প্রথম দুটি বুলেট এতটাই স্পষ্টভাবে পছন্দ করেছে যে তারা এটিকে
উজ্জীবিত

0

ওয়েল একটি বড় বিষয় আপনি জমা দিয়েছিলেন এমন কিছু GETযা ইউআরএল এর মাধ্যমে প্রকাশিত হতে চলেছে। দ্বিতীয়ত সিজেজোজ যেমন বলেছেন, কোনও ইউআরএল-এর অক্ষরের সীমাবদ্ধতা রয়েছে।


0

আর একটি পার্থক্য হ'ল পোষ্টের জন্য সাধারণত দুটি এইচটিটিপি অপারেশন প্রয়োজন হয়, তবে জিইটি-র কেবল একটি প্রয়োজন।

সম্পাদনা: সাধারণ প্রোগ্রামিং ধরণের জন্য - আমার স্পষ্ট করা উচিত। সাধারণত কোনও পোষ্টের উপরে স্ট্রেট আপ এইচটিএমএল ওয়েব পৃষ্ঠার সাথে প্রতিক্রিয়া জানানো বিভিন্ন কারণে একটি প্রশ্নোত্তর নকশা, যার মধ্যে একটি বিরক্তিকর "আপনাকে এই ফর্মটি পুনরায় জমা দিতে হবে, আপনি কি এটি করতে চান?" পিছনে বোতাম টিপে।


2
পোষ্টের জন্য 2 টি HTTP ক্রিয়াকলাপের প্রয়োজন হয় না।
বিলি ওনিল

3
: পোস্ট-পুনর্নির্দেশ-2 অপারেশন প্রয়োজন en.wikipedia.org/wiki/Post/Redirect/Get
cherouvim

1
পোস্টে সার্ভারে 2 টি রাউন্ড ট্রিপ প্রয়োজন হতে পারে - একটি সাধারণ প্যাটার্নটি expect: 100-continueশিরোনাম সহ পোষ্ট করা হয় এবং তারপরে সার্ভারের সাথে একটি সাড়া দেওয়ার পরে কেবল ডেটা প্রেরণ করে 100 CONTINUE
ফ্রাঙ্ক ফার্মার

চমৎকার নিবন্ধ চেরোভিম, আমি জানতাম না যে প্যাটার্নটির কোনও নাম আছে।
প্লাইনেক্স

@ কেরাউভিম: পোস্ট রিডাইরেক্ট গেট ডু, কিন্তু প্লেইন পোস্ট দেয় না। আপনি ঠিক একই ফলাফলের সাথে পুনর্নির্দেশ পেতে পেতে পারেন। আপনার ফর্ম জমা দেওয়ার জন্য ব্যবহার করা প্রোটোকলের সাথে এর কোনও যোগসূত্র নেই।
বিলি ওনিল

0

অন্যদের জবাব অনুসারে, ইউআরএল আকারের সাথে গেটের একটি সীমা রয়েছে এবং কেবল পোস্টের মাধ্যমে ফাইল জমা দেওয়া যায়।

আমি যে এক করতে পারেন যোগ করতে চাই একটি পেতে একটি ডেটাবেসে জিনিস যুক্ত পারে এবং একটি পোস্ট দিয়ে ক্রিয়া সম্পাদন করতে পারে। যখন কোনও স্ক্রিপ্ট কোনও পোস্ট পায় বা পায়, এটি লেখক যা চান তা করতে পারে। আমি বিশ্বাস করি যে বইয়ের চয়ন করা শব্দটি বা আপনি এটি কীভাবে পড়েন তা থেকে বোঝার অভাব আসে।

একজন স্ক্রিপ্ট লেখকের উচিত ডাটাবেস পরিবর্তন করতে পোস্টগুলি ব্যবহার করা এবং কেবল তথ্য পুনরুদ্ধারের জন্য ব্যবহার করা ।

স্ক্রিপ্টিং ভাষাগুলি অনুরোধটি অ্যাক্সেস করার জন্য অনেকগুলি উপায় সরবরাহ করেছিল। উদাহরণস্বরূপ, পিএইচপি $_REQUESTকোনও পোস্ট বা একটি গেটের পুনরুদ্ধার ব্যবহারের অনুমতি দেয় । একটিকে আরও নির্দিষ্ট $_GETবা এর পক্ষে এড়ানো উচিত $_POST

ওয়েব প্রোগ্রামিংয়ে, ব্যাখ্যার আরও অনেক জায়গা রয়েছে। কোনটি করা উচিত এবং কোনটি করতে পারে সেগুলি রয়েছে তবে কোনটি আরও ভাল তা প্রায়শই বিতর্কের জন্য থাকে। ভাগ্যক্রমে, এক্ষেত্রে কোনও অস্পষ্টতা নেই। আপনি উচিত ডেটা পরিবর্তন পোস্ট ব্যবহার করুন, এবং আপনি উচিত তথ্য পুনরুদ্ধার করতে পেতে ব্যবহার করুন।


0

গর্গাপোর, mod_rewriteএখনও প্রায়শই ব্যবহার করে GET। এটি কেবল ক্যোরির GETস্ট্রিং সহ কোনও ইউআরএলতে বন্ধুত্বপূর্ণ URL অনুবাদ করতে দেয় ।


-1

এইচটিটিপি পোস্ট ডেটাতে তথ্যের পরিমাণের নির্দিষ্ট সীমা থাকে না, যেখানে বিভিন্ন ব্রাউজার হিসাবে জিইটি এর আলাদা আলাদা সীমা থাকে। আরএফসি 2068 বলেছে:

255 বাইটের উপরে ইউআরআই দৈর্ঘ্যের উপর নির্ভর করে সার্ভারগুলি সতর্ক হওয়া উচিত, কারণ কিছু পুরানো ক্লায়েন্ট বা প্রক্সি বাস্তবায়ন এই দৈর্ঘ্যগুলিকে যথাযথভাবে সমর্থন করে না

বিশেষত তাদের জন্য ব্যবহৃত হ'ল সঠিক HTTP গঠন করা উচিত। এইচটিটিপি জিইটির এর পার্শ্ব-প্রতিক্রিয়া হওয়া উচিত নয় এবং এইচটিটিপি প্রক্সি ইত্যাদির মাধ্যমে নিরাপদে রিফ্রেশ এবং সংরক্ষণ করা যায় etc.

আপনি যখন কোনও ইউআরএল সংস্থার বিরুদ্ধে ডেটা জমা দিতে চান তখন এইচটিটিপি পোস্টগুলি ব্যবহৃত হয়।

এইচটিটিপি জিইটি ব্যবহারের জন্য একটি আদর্শ উদাহরণ একটি অনুসন্ধানে, অর্থাৎ অনুসন্ধানে? কোয়েরি = আমার + কোয়েরি এইচটিটিপি পোস্ট ব্যবহারের একটি সাধারণ উদাহরণ একটি অনলাইন ফর্মটিতে প্রতিক্রিয়া জমা দিচ্ছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.