2010-10-01 10 views
8

JSON içeren bir POST isteğinin içeriğini ayrıştırmak için basit bir python CGI betiği yazmam gerekiyor. Bu sadece test kodudur, böylece gerçek sunucu hazır olana (bir başkası tarafından yazılana) kadar bir istemci uygulamasını test edebilirim.Python CGI kullanarak "istek gövdesi" nasıl ayrıştırılır?

cgi.FieldStorage() öğesini okuyabilir ve anahtarları() atarım ancak JSON'u içeren istek gövdesi hiçbir yerde bulunamaz.

Ayrıca, istek gövdesini içeren bir değişkeni görmemek dışında birçok bilgi sağlayan os.environ() dosyasını da atabilirim.

Herhangi bir girdi takdir edildi. Eğer CGI kullanıyorsanız

Chris

cevap

17

, sadece stdin verileri okumak:

import sys 
data = sys.stdin.read() 
+1

Fantastik! Harika çalışıyor! Aradım ama bunu hiç görmedim. Teşekkür ederim! – Christopher

+0

çok yardımcı oluyor! müthiş! – luoluo

3

haber kodunuzda önce cgi.FieldStorage() ararsanız, standart giriş aygıtından vücut veri almak olamayacağını Çünkü sadece bir kez okunabilir.