2009-09-11 6 views
15

मेरी पायथन सीजीआई एक विशिष्ट http स्थिति कोड, जैसे 403 या 418 कैसे लौटा सकता है?पायथन सीजीआई एक http स्थिति कोड, जैसे 403 लौट रहा है?

मैंने स्पष्ट (प्रिंट "स्थिति: 403 निषिद्ध") की कोशिश की लेकिन यह काम नहीं करता है।

उत्तर

16
print 'Status: 403 Forbidden' 
print 

मेरे लिए काम करता है। हालांकि आपको दूसरे प्रिंट की आवश्यकता है, क्योंकि आपको HTTP प्रतिक्रिया शीर्षकों को समाप्त करने के लिए डबल-न्यूलाइन की आवश्यकता है। अन्यथा आपका वेब सर्वर शिकायत कर सकता है कि आप इसे हेडर का पूरा सेट नहीं भेज रहे हैं।

sys.stdout('Status: 403 Forbidden\r\n\r\n') 

, (यह मानते हुए कि आपके CGI स्क्रिप्ट विंडोज पर पाठ मोड में नहीं चल रहा है) आरएफसी के अनुसार तकनीकी रूप से अधिक सही हो सकता है। हालांकि दोनों पंक्ति समाप्ति हर जगह काम करने लगती है।

1

मुझे लगता है, आप send_error देख रहे हैं। यह py3k में http.server में स्थित होगा।

+0

मैं अजगर 2.5 का उपयोग कर रहा हूं। क्या वह काम करेगा? – cfischer

+0

मुझे नहीं पता कि यह क्यों नहीं होना चाहिए। – SilentGhost

+0

केवल तभी यदि आप CGIHTTPServer का उपयोग कर रहे हैं, हालांकि। – bobince

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