http - ২০১৭ - ইত্যাদি ২০১৮ নীলফামারী




PUT, মুছে ফেলা, মাথা, ইত্যাদি পদ্ধতি বেশিরভাগ ওয়েব ব্রাউজারে উপলব্ধ? (5)

আমি এখানে একটি দম্পতি প্রশ্ন দেখেছি যেমন কীভাবে বিশৃঙ্খল পরিষেবাগুলি ডিবাগ করবেন , যা উল্লেখ করে:

দুর্ভাগ্যবশত যে একই ব্রাউজার আমাকে HTTP PUT, DELETE, এমনকি একটি নির্দিষ্ট ডিগ্রী এমনকি HTTP POST পরীক্ষা করার অনুমতি দেবে না।

আমি শুনেছি যে ব্রাউজারগুলি কেবলমাত্র জিইটি এবং POST সমর্থন করে, অন্য কোন উত্স থেকে:

যাইহোক, ফায়ারফক্সে কয়েকটি দ্রুত পরীক্ষা দেখায় যে PUT পাঠানো এবং DELETE অনুরোধগুলি প্রত্যাশিত হিসাবে কাজ করে - XMLHttpRequest সফলভাবে সম্পন্ন করে এবং সঠিক পদ্ধতির সাথে সার্ভার লগগুলিতে অনুরোধটি দেখায়। আমি কি অনুপস্থিত নই, যেমন ক্রস-ব্রাউজার সামঞ্জস্য বা অ-স্পষ্ট সীমাবদ্ধতাগুলির কিছু দিক আছে?


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

আপডেট: স্পষ্ট করার জন্য, আমি বলতে চাইনি (যদিও আমি লিখেছি) যে আপনি XMLHttpRequest লিখেছেন; আমি বোঝাতে চেয়েছিলাম যে আপনি XMLHttpRequest ব্যবহার করে এমন কোড লিখেছেন। ব্রাউজারগুলি মূলত XMLHttpRequest সমর্থন করে না। XMLHttpRequest জাভাস্ক্রিপ্ট রানটাইম থেকে আসে, যা একটি ব্রাউজার দ্বারা হোস্ট করা যেতে পারে, যদিও এটি হতে হবে না ( Rhino )। তাই লোকেরা বলে যে ব্রাউজারগুলি PUT সমর্থন করে না এবং DELETE ফেলছে-কারণ এটি আসলে তাদের সমর্থিত জাভাস্ক্রিপ্ট।


এইচটিএমএল ফর্ম (এইচটিএমএল সংস্করণ 4 এবং এক্সএক্সএমএল 1 পর্যন্ত) শুধুমাত্র HTTP অনুরোধ পদ্ধতি হিসাবে জিইটি এবং পোষ্ট সমর্থন করে। এর জন্য একটি কার্যকারিতা হল পোষ্টের মাধ্যমে অন্য পদ্ধতিগুলিকে সুরক্ষিত ফর্ম ক্ষেত্র ব্যবহার করে সুরঞ্জিত করা যা সার্ভার দ্বারা পাঠানো হয় এবং অনুরোধটি সেইভাবে প্রেরণ করা হয়।

যাইহোক, GET , POST , PUT এবং DELETE সমস্ত প্রধান ওয়েব ব্রাউজারে (যেমন, ফায়ারফক্স, সাফারি, ক্রোম, অপেরা) XMLHttpRequest (অর্থাত্ AJAX কল) বাস্তবায়নের দ্বারা সমর্থিত।


শুধু যোগ করতে - সাফারি ২ এবং এর আগে স্পষ্টভাবে PUT সমর্থন করে না এবং মুছে ফেলুন। আমি ছাপ 3 পেয়েছিলাম, কিন্তু আমি পরীক্ষা করার জন্য এটি প্রায় নেই। সাফারি 4 নিশ্চিতভাবে PUT সমর্থন করে এবং মুছে দিন।


XMLHttpRequest জাভাস্ক্রিপ্ট অবজেক্ট মডেলের একটি আদর্শ বস্তু।

উইকিপিডিয়ার মতে, XMLHttpRequest প্রথমে ইন্টারনেট এক্সপ্লোরার 5 এ ActiveX অবজেক্ট হিসাবে আবির্ভূত হয়েছিল, তবে তারপরে একটি মান হিসাবে তৈরি করা হয়েছে এবং এটি 1.0 থেকে মজিলা পরিবারের জাভাস্ক্রিপ্টে ব্যবহার করা হয়েছে, অ্যাপল সাফারি 1.2, অপেরা 7.60-পি 1 এবং IE। 7.0।

বস্তুর open() পদ্ধতিটি HTTP পদ্ধতিটিকে একটি যুক্তি হিসাবে গ্রহণ করে - এবং কোনও বৈধ HTTP পদ্ধতি গ্রহণ করার জন্য নির্দিষ্ট করা হয় (লিঙ্কটির আইটেম সংখ্যা 5 দেখুন) - GET , POST , HEAD , PUT এবং DELETE , নির্দিষ্ট করে আরএফসি 2616

একটি সাইড নোট হিসাবে IE 7-8 শুধুমাত্র নিম্নলিখিত HTTP পদ্ধতিগুলির অনুমতি দেয়: "পান", "পোস্ট", "মাথা", "চাপুন", "মুছে ফেলুন", "মুভ", "PROFIFIND", "PROPPATCH", "MKCOL" , "কপি", "লক", "আনলক" এবং "বিকল্প"


হ্যাঁ , PUT, DELETE, HEAD ইত্যাদি HTTP পদ্ধতিগুলি সমস্ত আধুনিক ব্রাউজারে উপলব্ধ।

XMLHttpRequest Level 2 ব্রাউজারগুলির সাথে সঙ্গতিপূর্ণ হওয়া এই পদ্ধতিগুলিকে সমর্থন করতে হবে । কোন ব্রাউজারটি XMLHttpRequest Level 2 সমর্থন করে তা পরীক্ষা করার জন্য আমি প্রস্তাব করতে পারি:

http://caniuse.com/#feat=xhr2

শুধুমাত্র অপেরা মিনি সমর্থনে এটিএম (জুলি '15) অভাব রয়েছে, তবে অপেরা মিনি সবকিছুই সমর্থন করে না। :)







ajax