Computer >> कंप्यूटर >  >> नेटवर्किंग >> इंटरनेट

JSON के लिए सही सामग्री-प्रकार क्या है? अनुरोध हैडर माइम प्रकार समझाया गया

इंटरनेट पर उपयोग किए जाने वाले प्रत्येक संसाधन का एक मीडिया प्रकार होता है, जिसे MIME प्रकार के रूप में भी जाना जाता है, जो बहुउद्देशीय इंटरनेट मेल एक्सटेंशन के लिए है। सर्वर और क्लाइंट के बीच लेनदेन के लिए यह जानकारी आवश्यक है।

ब्राउजर को मीडिया प्रकार के संसाधनों को जानने की जरूरत है ताकि वह उन्हें ठीक से संभाल सके।

वही सर्वर के लिए जाता है। इसे सटीक पार्सिंग और प्रोसेसिंग के लिए भेजे गए संसाधनों के प्रकार को जानने की जरूरत है।

सामग्री-प्रकार कहां घोषित किया गया है?

किसी भी संसाधन का मीडिया प्रकार Content-Type . में घोषित किया गया है अनुरोध शीर्षलेख की संपत्ति (क्लाइंट पर, सर्वर से अनुरोध करते समय) या प्रतिक्रिया शीर्षलेख में (सर्वर पर, प्रतिक्रिया भेजते समय)।

संसाधन के सामग्री प्रकार को स्पष्ट रूप से घोषित किए बिना, क्लाइंट स्वचालित रूप से प्रकार का पता लगाने का प्रयास कर सकता है, लेकिन परिणाम सटीक नहीं हो सकता है। यही कारण है कि इसे स्पष्ट रूप से घोषित करना महत्वपूर्ण है।

मीडिया प्रकार

मीडिया प्रकार विभिन्न रूपों में मौजूद हैं। उन्हें विभिन्न समूहों में वर्गीकृत किया गया है:

  • आवेदन
  • ऑडियो
  • फ़ॉन्ट
  • उदाहरण
  • छवि
  • संदेश
  • मॉडल
  • मल्टीपार्ट
  • पाठ
  • और वीडियो

इन श्रेणियों के भी अपने प्रकार हैं। उदाहरण के लिए, application/json application . के अंतर्गत एक प्रकार है और text/html text . के अंतर्गत एक प्रकार है ।

आप IANA (एक निकाय जो इंटरनेट पर कुछ प्रमुख तत्वों का समन्वय करता है) मीडिया प्रकारों में मीडिया प्रकारों की पूरी सूची पा सकते हैं।

ये सभी प्रकार विभिन्न प्रकार के डेटा को कवर करते हैं जैसे टेक्स्ट, ऑडियो, इमेज, HTML, और कई अन्य प्रकार जो इंटरनेट पर उपयोग किए जाते हैं।

ब्राउज़र को संसाधन के मीडिया प्रकार को जानना आवश्यक है

जैसा कि मैंने ऊपर उल्लेख किया है, ब्राउज़र को यह जानने की जरूरत है कि उसे किस प्रकार की सामग्री प्राप्त होती है। इसे स्पष्ट करने के लिए यहां एक उदाहरण दिया गया है।

निम्नलिखित कोड एक नोड सर्वर है जो एक HTML फ़ाइल परोसता है:

const http = require("http");
const fs = require("fs");
const path = require("path");

const server = http.createServer(function (req, res) {
	const filePath = path.join(__dirname, "index.html");
	var stat = fs.statSync(filePath);

	res.writeHead(200, {
		"Content-Type": "text/css",
		"Content-Length": stat.size,
	});

	const readStream = fs.createReadStream(filePath);
	readStream.pipe(res);
});

server.listen(5000);

console.log("Node.js web server at port 5000 is running..");

कोड की बारीकियों के बारे में चिंता न करें। आप केवल index.htm . के बारे में चिंतित हैं फ़ाइल हम परोस रहे हैं और वह Content-Type है text/css

यहां index.html की सामग्री दी गई है :

<h1>Homepage</h1>

बेशक, एक HTML दस्तावेज़ एक CSS फ़ाइल से अलग है। यह रहा localhost:5000 पर परिणाम जब सर्वर शुरू होता है:

JSON के लिए सही सामग्री-प्रकार क्या है? अनुरोध हैडर माइम प्रकार समझाया गया

आप DevTools के नेटवर्क टैब में हेडर की जांच करके प्राप्त प्रतिक्रिया की पुष्टि भी कर सकते हैं।

क्रोम ब्राउज़र पर यह परिणाम है:

JSON के लिए सही सामग्री-प्रकार क्या है? अनुरोध हैडर माइम प्रकार समझाया गया

ब्राउज़र को सामग्री एक सीएसएस प्रकार के रूप में मिली, इसलिए, उसने इसे सीएसएस के रूप में मानने की कोशिश की।

साथ ही, ध्यान दें कि ब्राउज़र द्वारा प्राप्त सामग्री के प्रकार का पूरा ज्ञान सुरक्षा कमजोरियों को भी कम करता है क्योंकि ब्राउज़र उस डेटा के लिए सुरक्षा मानकों को जानता है।

अब जब आप MIME प्रकारों की अवधारणा और उनके महत्व को समझ गए हैं, तो चलिए JSON पर चलते हैं।

JSON के लिए सही सामग्री-प्रकार

JSON को उचित रूप से उपयोग करने के लिए ब्राउज़र द्वारा सही ढंग से व्याख्या की जानी चाहिए। text/plain आमतौर पर JSON के लिए उपयोग किया जाता था, लेकिन IANA के अनुसार, JSON के लिए आधिकारिक MIME प्रकार application/json है ।

इसका मतलब है कि जब आप सर्वर पर JSON भेज रहे हैं या सर्वर से JSON प्राप्त कर रहे हैं, तो आपको हमेशा Content-Type घोषित करना चाहिए हैडर के रूप में application/json क्योंकि यही वह मानक है जिसे क्लाइंट और सर्वर समझते हैं।

निष्कर्ष

जैसा कि ऊपर बताया गया है, सर्वर (ब्राउज़र की तरह) को POST अनुरोध में, इसे भेजे गए डेटा के प्रकार को जानने की जरूरत है। यही कारण है forms फाइलों के साथ आमतौर पर enctype . होते हैं multipart/form-data . के मान वाली विशेषता ।

इस तरह अनुरोध को एन्कोड किए बिना, POST अनुरोध काम नहीं करेगा। साथ ही, एक बार जब सर्वर को पता चल जाता है कि उसे किस प्रकार का डेटा मिला है, तो वह एन्कोडेड डेटा को पार्स करना जानता है।

इस लेख में, हमने देखा कि MIME प्रकार क्या हैं और उनका उद्देश्य क्या है। साथ ही, हमने JSON के लिए आधिकारिक सामग्री प्रकार को देखा। मुझे आशा है कि अब आप जान गए होंगे कि इंटरनेट पर उपयोग किए जाने पर संसाधन प्रकारों को घोषित करना क्यों महत्वपूर्ण है।


  1. माइक्रोसॉफ्ट 365 क्या है? Office 365 का नया चेहरा समझाया गया

    21 अप्रैल, 2020 को, Microsoft ने आधिकारिक तौर पर अपने Office सुइट लाइनअप को Office 365 से Microsoft 365 पर स्विच कर दिया। अधिकांश Office उपयोगकर्ता सॉफ़्टवेयर सूट से तुरंत परिचित हो जाएंगे। वर्ड, एक्सेल और पीपीटी जैसे घरेलू नामों को शामिल करते हुए, माइक्रोसॉफ्ट 365 में व्यक्तिगत और उद्यम दोनों के उप

  1. 5 आपके नेक्स्टक्लाउड सर्वर के लिए इंस्टॉल किए जाने वाले सर्वश्रेष्ठ ऐप्स

    क्लाउड में फ़ाइलों को संग्रहीत करने के लिए वहाँ बहुत सारे विकल्प हैं। ड्रॉपबॉक्स, वनड्राइव और गूगल ड्राइव उनमें से कुछ ही हैं। उस ने कहा, आप अपने डेटा पर अधिक नियंत्रण चाहते हैं। आप अपने स्वयं के सर्वर पर नेक्स्टक्लाउड स्थापित कर सकते हैं और यदि आप चाहें तो एंड-टू-एंड एन्क्रिप्शन भी सक्षम कर सकते है

  1. “पिंग” क्या है और यह इंटरनेट को कैसे प्रभावित करता है?

    यदि आप लंबे समय से वेब ब्राउज़ कर रहे हैं या मल्टीप्लेयर गेम खेलना पसंद करते हैं, तो आप पिंग शब्द से परिचित हो सकते हैं। आप पहले से ही जानते होंगे कि पिंग जितना कम होगा, आपका कनेक्शन उतना ही बेहतर होगा। लेकिन वास्तव में पिंग क्या है? कंप्यूटिंग की दुनिया में इसका क्या अर्थ है, और इसका इतना अजीब नाम