5

मैं वर्तमान में यह समझने की कोशिश कर रहा हूं कि HTTP स्थिति कोड के 3xx-श्रेणी वर्ग के लिए वास्तव में 304/संशोधित योग्यता कैसे योग्य है। RFC 1945, sec. 9.3 और RFC 2616, sec. 10.3 दोनों पढ़ें:क्यों 304 स्टेटस कोड "रीडायरेक्ट" के रूप में गिना जाता है?

स्थिति कोड के इस वर्ग को इंगित करता है कि आगे की कार्रवाई के आदेश को पूरा करने में उपयोगकर्ता एजेंट को किया जाना चाहिए।

जबकि "ग्राहक के स्थानीय कैश से लोड करना" स्पष्ट रूप से एक "आगे की कार्रवाई" है, मैं यह देखने के लिए संघर्ष कर रहा हूं कि यह HTTP की भावना में रीडायरेक्ट कैसे है। क्या मैं इसे सचमुच पढ़ रहा हूं?

उत्तर

7

http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p2-semantics-26.html#rfc.section.6.4.p.2 देखें:

रीडायरेक्ट के कई प्रकार के होते हैं:

  1. वाले रीडायरेक्ट, संकेत मिलता है संसाधन अलग URI पर उपलब्ध हो सकती है स्थिति कोड के रूप में के रूप में स्थान फ़ील्ड द्वारा प्रदान की 301 (स्थायी रूप से स्थानांतरित), 302 (मिला), और 307 (अस्थायी रीडायरेक्ट)।

  2. पुनर्निर्देशन जो मिलान संसाधनों का विकल्प प्रदान करता है, प्रत्येक मूल अनुरोध लक्ष्य का प्रतिनिधित्व करने में सक्षम है, जैसे कि 300 (एकाधिक विकल्प) स्थिति कोड में।

  3. स्थान फ़ील्ड द्वारा पहचाने गए एक अलग संसाधन के लिए पुनर्निर्देशन, जो 303 (अन्य देखें) स्थिति कोड के रूप में अनुरोध पर अप्रत्यक्ष प्रतिक्रिया का प्रतिनिधित्व कर सकता है।

  4. 304 (संशोधित नहीं) स्थिति कोड के रूप में पहले कैश किए गए परिणाम के लिए पुनर्निर्देशन।

+0

लिंक के लिए धन्यवाद। यह देखना दिलचस्प है कि 304 पूरी तरह से अलग सेक्शन में सूचीबद्ध है। तो अर्थशास्त्र वास्तव में "स्थानीय रूप से कैश की गई प्रतिलिपि पर रीडायरेक्ट कर रहे हैं?" अन्यथा मैं वास्तव में नहीं जानता कि "संशोधित नहीं" क्यों 2xx-वर्ग कोड नहीं हो सकता है जैसे 201/बनाया गया (जो भी रीडायरेक्ट कर सकता है) या 204/कोई सामग्री नहीं। आखिरकार, अनुरोध * सफल रहा है। – DaSourcerer

+0

हां, "अगर-संशोधित-चूंकि" हेडर स्पष्ट रूप से सर्वर को बताता है "मुझे पता है कि यह संसाधन मौजूद है, और मुझे पता है कि इसका प्रतिनिधित्व कैसे किया जाए, क्या यह पिछली बार मुझे पता था क्योंकि यह संशोधित हुआ था?" - सर्वर या तो "304 संशोधित नहीं", या "200 ओके" (सामग्री का नया संस्करण) या "404 नहीं मिला", या इस पल के लिए जो भी उपयुक्त हो, के साथ अधिक उचित कोड के साथ उत्तर देगा। – AnrDaemon

2

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

संबंधित मुद्दे

 संबंधित मुद्दे