2012-08-23 9 views
6

में जेसन प्रारूपित अनुरोधों को पार्सिंग हाल ही में एक एपेंगिन ऐप पर काम कर रहा था। मैं ऐप के अनुरोध में निहित जेसन डेटा को पार्स करना चाहता हूं। मैं इसे प्राप्त करने के लिए requesthandler वर्ग के अनुरोध ऑब्जेक्ट का उपयोग कैसे करूं?एपेंगिन

import cgi 
import webapp2 
import datamethods 

from google.appengine.ext.webapp.util import run_wsgi_app 

class adduser(webapp2.RequestHandler): 
    def get(self): 
     # Get the phone number from json data in request. 
     userphone = self.request.get("phone") 
     # Get the name from json data in request. 
     name = self.request.get("name") 


app = webapp2.WSGIApplication([ 
    ('/adduser', adduser), 
    ('/sign', updatestatus), 
    ('/login',login) 
], debug=True) 


def main(): 
    run_wsgi_app(app) 

if __name__ == "__main__": 
    main() 

उत्तर

17

आप एक वस्तु में भेजे json स्ट्रिंग पार्स करने के लिए है:

नीचे कोड का एक टुकड़ा दिखाने के लिए मैं क्या हासिल करना चाहते है। इसके बाद आप गुणों तक पहुंच सकते हैं।

import json # Now you can import json instead of simplejson 
.... 
jsonstring = self.request.body 
jsonobject = json.loads(jsonstring) 
+0

brilliant..thanks .... मैं बहुत तरह इनबिल्ट json पुस्तकालय इस्तेमाल किया:

 import json class message(webapp.RequestHandler): def post(self): self.response.headers['Content-Type'] = "text/plain" # self.response.out.write(self.request.body) data = json.loads(self.request.body) self.response.out.write(data['sux']) 
और है कि यह हल करती है ... – koladotnet

+1

तुम सच में अभी भी सरल json, की जरूरत है क्यों नहीं बस json? पाइथन एसडीके संस्करण 1.9.55 के बाद –

+0

। आप यूजसन का उपयोग कर सकते हैं। अल्ट्राजसन एक अल्ट्रा फास्ट जेएसओएन एन्कोडर और डीकोडर शुद्ध सी में लिखा गया है – voscausa

0
import cgi 
import webapp2 
import datamethods 

from google.appengine.ext.webapp.util import run_wsgi_app 

class adduser(webapp2.RequestHandler): 
    def get(self): 
     items = [] 
     response = { } 

     userphone = self.request.get("phone") 
     name = self.request.get("name") 

     items.append({'userphone': userphone , 'name':name}) 
     response['userInformation'] = items 
     return response #return json data 


app = webapp2.WSGIApplication([ 
    ('/adduser', adduser), 
    ('/sign', updatestatus), 
    ('/login',login) 
], debug=True) 


def main(): 
    run_wsgi_app(app) 

if __name__ == "__main__": 
    main() 
संबंधित मुद्दे