2011-02-16 12 views
7

यह ऐसा कुछ ऐसा लगता है जो सर्वर-साइड कोड विकसित करते समय वास्तव में उपयोगी होगा। यदि आप जानते हैं कि ब्राउज़र सर्वर-साइड से जावास्क्रिप्ट का उपयोग नहीं करेगा, तो आप आसानी से उपयोगकर्ता को समायोजित कर सकते हैं। या अगर आपको ऐसा लगता है, तो उन्हें एक ऐसे पृष्ठ पर रीडायरेक्ट करें जो कहता है 'हे ... हमें आपके आवेदन के लिए जावास्क्रिप्ट का उपयोग करने की आवश्यकता है' आदि।ब्राउजर क्यों नहीं भेजते हैं कि उनके पास अनुरोध हेडर में जावास्क्रिप्ट सक्षम/अक्षम है या नहीं?

क्या किसी को पता है कि यह क्यों है?

+0

प्रश्न "क्यों" है, इसलिए इसका प्रोग्रामिंग के साथ कुछ लेना देना नहीं है, लेकिन अगर आपने "कैसे" पूछा था, तो मैंने जवाब दिया होगा: आप एक जावास्क्रिप्ट लिख सकते हैं जो सर्वर को बताएगा कि जावास्क्रिप्ट सक्षम है। यदि ऐसा नहीं होता है, तो यह अक्षम है। – zvone

+0

@zvone - जिसके परिणामस्वरूप 2 अनुरोध होंगे, और यदि कोई उस पर ऐसा करने की हिम्मत करता है तो आप नीचे मतदान करते हैं, और यदि आप कुछ समाधान का प्रस्ताव देते हैं तो आप भी नीचे मतदान करते हैं क्योंकि यह "सही" नहीं है .. तो बहुत अच्छा होता था , अब यह वास्तव में राय जीतता है ... geeks और उनके बीएस। – argon

उत्तर

2

<noscript> टैग, here देखें।

मुझे पता है कि यह संभवतः आदर्श नहीं है (मुझे इसे अलग करने के लिए पर्याप्त अनुभव नहीं है) लेकिन यह निश्चित रूप से हमें कुछ हद तक खराब करने के लिए पर्याप्त लचीलापन देता है।

+0

गिरावट न करें - * एन्हांस्ड * (प्रगतिशील) –

+3

ठीक है, आइए हम पर्याप्त रूप से _fallback पर लाइन खींचें? –

0

वास्तविक कारण यह है कि जब नेटस्केप जावास्क्रिप्ट के साथ आया, तो उन्होंने कभी भी HTTP शीर्षकों में जानकारी उपलब्ध कराने का विचार नहीं किया। इसके बजाय उन्होंने <noscript> टैग बनाया।

-1

मुझे लगता है कि स्वीकृति फ़ील्ड का उपयोग ऐसे उद्देश्य के लिए किया जा सकता है, जैसे "स्वीकार करें: टेक्स्ट/जावास्क्रिप्ट"। लेकिन चूंकि यह स्वामित्व है क्योंकि आईईटीएफ इसे किसी भी मानकों में शामिल नहीं करेगा और व्यापक अनुकूलन इसलिए असंभव है। वेब डेवलपर्स ने अभी तक मुकाबला किया है।

+1

वास्तव में नहीं। यह सर्वर को बताएगा कि यह HTML के बजाय जावास्क्रिप्ट को वापस भेज सकता है। – ThiefMaster

+0

यह सच है, मेरा बुरा। – JonC

0

के रूप में काम के रूप में यह अपने सर्वर आपके ब्राउज़र की जावास्क्रिप्ट क्षमता के बारे में पता करने से पहले पृष्ठ प्रतिपादन शुरू हुआ है करने के लिए हो सकता है, मैं इस तरह के रूप में एक अजीब बढ़त मामले देख सकते हैं:

// hide malicious code from people without javascript 
if ($header['javascript'] == 'false') { 
    show_regular_safe_website(); 
} else { 
    use_some_nasty_javascript_exploit(); 
} 
+0

........... हुह? – Pedro

+1

और चेक किए बिना जावास्क्रिप्ट शोषण का उपयोग करने से उन्हें क्या रोकना है? – CanSpice

+0

क्योंकि जावास्क्रिप्ट वाले लोग बंद हो गए हैं, फिर भी वे देख सकते हैं कि उन्होंने शोषण करने का प्रयास किया है। :) – drudge

1

एक तरह से मैं का उपयोग करने के लिए है एक लैंडिंग पृष्ठ/लॉगिन पेज। जब उपयोगकर्ता लॉगऑन बटन दबाता है तो लॉगऑन पोस्ट करने से पहले परिणाम सबमिट करने या छिपे हुए फ़ील्ड को अपडेट करने के लिए जावास्क्रिप्ट का उपयोग करें। यदि जावास्क्रिप्ट अक्षम है तो जावास्क्रिप्ट काम नहीं करेगा और इसलिए आप मान सकते हैं कि उन्होंने इसे बंद कर दिया है।

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