2012-01-18 14 views
9

एक उपयोगकर्ता अपनी साइट http://mysite.com/some-drawing पर एक रेखाचित्र का लिंक क्लिक करता है, मैं स्थिति कोड 300 और दो संसाधन स्थानों के साथ प्रतिक्रिया करने के लिए अपने सर्वर चाहते हैं: http://mysite.com/some-drawing.png और http://mysite.com/some-drawing.myapp, और ग्राहक ब्राउज़र अपने आप जो एक का उपयोग करने, आधार तय है अपनी क्षमताओं पर:HTTP स्थिति कोड 300 (एकाधिक विकल्प) के लिए सटीक प्रतिक्रिया संरचना क्या है?

  • MyApp उपयोगकर्ता की मशीन पर स्थापित है, तो ब्राउज़र *.myapp संस्करण डाउनलोड करें और यह प्रदर्शित करने के लिए MyApp उपयोग करना चाहिए।

  • हालांकि, यदि MyApp स्थापित नहीं है, और ब्राउज़र इस संस्करण को प्रदर्शित करने में असमर्थ है, तो मैं इसे *.png संस्करण चुनना चाहता हूं।

हालांकि, मैं स्थिति कोड 300

rfc2616 साथ HTTP उत्तर की संरचना का पता लगाना एक कठिन समय चल रहा है कहते हैं:

अनुरोध किया गया संसाधन में से किसी एक से मेल खाती है प्रस्तुतियों का एक सेट, प्रत्येक के अपने विशिष्ट स्थान के साथ, और एजेंट- संचालित बातचीत जानकारी (सेक्शन 12) प्रदान की जा रही है ताकि उपयोगकर्ता (या उपयोगकर्ता एजेंट) पसंदीदा प्रतिनिधित्व का चयन कर सके और उस स्थान पर अपना अनुरोध रीडायरेक्ट करें।

जब तक यह एक HEAD अनुरोध किया गया था, प्रतिक्रिया चाहिए एक इकाई संसाधन विशेषताओं और से स्थान (रों) जो उपयोगकर्ता या उपयोगकर्ता एजेंट एक सबसे उपयुक्त का चयन कर सकते की सूची से युक्त शामिल हैं। इकाई प्रारूप सामग्री- में दिए गए मीडिया प्रकार द्वारा निर्दिष्ट हैडर हेडर फ़ील्ड टाइप करें। के उपयोगकर्ता एजेंट के प्रारूप और क्षमताओं के आधार पर, सबसे उपयुक्त विकल्प का चयन स्वचालित रूप से किया जा सकता है। हालांकि, यह विनिर्देश को ऐसे स्वचालित चयन के लिए किसी भी मानक को परिभाषित नहीं करता है।

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

शब्दों "संसाधन विशेषताओं और स्थान (रों) की सूची से युक्त इकाई" अस्पष्ट लगता है। इसका क्या मतलब है? क्या कोई जानता है कि यह कैसे किया जाता है?

उत्तर

4

यह काम नहीं करेगा।

हाइपरटेक्स्ट (एचटीएमएल) सामग्री में लिंक भेजकर "एकाधिक विकल्प" किए जाते हैं और उपयोगकर्ता चुनने दें।

+2

आरएफसी कहता है: "प्रारूप और क्षमताओं के आधार पर उपयोगकर्ता एजेंट, सबसे उपयुक्त विकल्प का चयन स्वचालित रूप से किया जा सकता है "। क्या आप कह रहे हैं कि सभी प्रमुख ब्राउज़र मैन्युअल चुनने के लिए उपयोगकर्ता को संकेत देकर सभी स्थिति 300 प्रतिक्रियाओं का इलाज करते हैं? –

+1

हां। क्या आप एक प्रारूप जानते हैं जो * उपयोगकर्ता एजेंट को आपके लिए चुनने की अनुमति देगा *? –

+1

उदाहरण के लिए: एक "मल्टीपार्ट/वैकल्पिक" मेटिया प्रकार इकाई। ईमेल क्लाइंट द्वारा कम से कम उपयोगकर्ता को पेश करने के लिए सबसे अच्छा विकल्प निर्धारित करने के लिए इसका उपयोग किया जा रहा है। –

2

सिद्धांत रूप में, यदि कोई ग्राहक सर्वर संचालित वार्ता का समर्थन करता है, तो आप विभिन्न 'स्वीकार्य- *' शीर्षलेख वापस भेज सकते हैं, लेकिन वे सीमित हैं (उदाहरण के लिए, लैंगेज, एन्कोडिंग, वर्णसेट), और 'डू' के लिए उपयोग किया जा सकता है आप पीडीएफ या एमएस वर्ड दस्तावेज़ चाहते हैं? ' या 'क्या आप इसे स्पेनिश या अंग्रेजी में पसंद करेंगे?'), लेकिन अन्य मनमाने ढंग से भेदभाव के लिए नहीं। मुझे इसका समर्थन करने वाले किसी भी ब्राउज़र से अवगत नहीं है।इसके बजाए, उनके पास ब्राउज़र स्वीकार्य शीर्षलेख भेजता है, और सर्वर जो कुछ भी सोचता है उसके साथ प्रतिक्रिया देता है।

देखें:

अद्यतन (सर्वर-आधारित सामग्री बातचीत से संबंधित समस्याओं के लिए):

इसके अलावा Mozilla Developer Network's "Content negotiation" है, जो कुछ लाभ की चर्चा को देखने के और सर्वर ड्राइव बनाम क्ली के नुकसान एनटी संचालित वार्ता, और कुछ अतिरिक्त शीर्षलेख जो ब्याज के हो सकते हैं (उदाहरण के लिए, यह देखने के लिए कि क्या ग्राहक इसका समर्थन करने के लिए 'वार्तालाप' भेजता है)

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