2013-04-29 4 views
8

मैं अपने webapp2.RequestHandler में एक def patch(): विधि का उपयोग करने के लिए आंशिक संसाधन अद्यतनों का समर्थन करने की कोशिश की है, लेकिन फिर देखा कि अनुमति तरीकों webapp2.py में जमे हुए हैं:PATCH विधि हैंडलर WebApp2

allowed_methods = frozenset(('GET', 'POST', 'HEAD', 'OPTIONS', 'PUT', 
          'DELETE', 'TRACE')) 

मैं कैसे कर सकता है Google AppEngine पर तैनात किए जाने पर पैच HTTP विधि को अनुमति देने के लिए webapp2.RequestHandler का विस्तार करें या WSGIApplication कक्षा को संशोधित करें?

+2

कामकाज के रूप में, आप 'एक्स-एचटीटीपी-विधि-ओवरराइड' को लागू कर सकते हैं क्योंकि Google अपने स्वयं के एपीआई के लिए करता है: http://googleappsdeveloper.blogspot.de/2012/03/making-patch-requests-from- एप्लिकेशन-engine.html –

उत्तर

10

बस एक WSGIApplication बनाने से पहले इस प्रदर्शन से एक बंदर पैच का उपयोग करें:

allowed_methods = webapp2.WSGIApplication.allowed_methods 
new_allowed_methods = allowed_methods.union(('PATCH',)) 
webapp2.WSGIApplication.allowed_methods = new_allowed_methods 

वहाँ एक वर्तमान patchwebapp2 समस्या ट्रैकर पर है, लेकिन कोई भी इसे उठाया गया है।

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