【发布时间】:2012-02-18 16:49:53
【问题描述】:
我已经用 django 活塞实现了 API,它从 sms/mms 获取数据。对于 MMS 案例,我必须发布带有图像和其他的 XML 数据。这是我在 handlers.py 上的代码 sn-p
def create(self, request,*args,**kwagrs):
try:
file_type = None
raw_data = request.raw_post_data
data = serializers.deserialize("xml", raw_data)
try:
parser = Parse(data.stream.getvalue())
message = parser.get_message()
action_id = parser.get_action_id()
except Exception,e:
return HttpResponse(Response({'sender':parser.get_sender(),'error_description':str(e)}).get_error_response(), mimetype='text/xml')
if action_id in ['o','m','vt','vh','yritys']:
return self.post_message(request,parser)
elif action_id == 'poista' or action_id == 'lopeta':
return self.expired_message(request,parser)
elif action_id == 'tiedot':
return self.get_contact_info(request,parser)
except Exception,e:
ad_id = None
return HttpResponse(Response({'sender':parser.get_sender(),'error_description':str(e)}).get_error_response(), mimetype='text/xml')
当我使用CURL 发布xml data 时,它可以工作,但是当我使用Firefox、httprequester 时,它把我扔了"BAD REQUEST"
【问题讨论】:
-
检查 POST 时返回的 400(使用 Firebug 或 Chrome/Safari 网络检查器)。可能是您发送了不恰当的论据 - 活塞应该给您某种回馈
-
它的 api 并且我正在使用 httpRequester 发布这个,那么我如何使用 Firebug 来检查这个?请提出建议。
标签: python django django-piston