从Apache CGI Python接收HTTP POST请求的XML内容
我现在的任务是搭建一个网络服务器,这个服务器需要能够接收带有XML内容的HTTP POST请求。当收到POST请求后,服务器要解析这个XML内容,并把提取出来的数据插入到数据库中。
我在CentOS上搭建了一个Apache(版本2.2)服务器,并写了一个简单的Python CGI脚本,当收到POST请求时会调用这个脚本。
在这个Python脚本中,我可以通过环境变量访问一些预定义的属性(比如:查询字符串、Cookies等),但是我还没弄明白怎么在Python代码中访问XML内容!
希望大家能告诉我如何在Python CGI脚本中访问XML内容。
<?xml version="1.0" encoding="utf-8"?>
<Events xmlns:i="http://www.w3.org/2001/XMLSchema-instance2" xmlns="http://schemas.datacontract.org/2004/07/foo.Web.Impl.Services.Data">
<Event>
<EventType>AORCreated</EventType>
<EventID>c3a09825-38b6-499f-81fc-9f821e4695ed</EventID>
<UserID>743d61a2-d8da-431c-8aa4-70912dd00ecb</UserID>
<LicenseeID>1</LicenseeID>
<Culture>en-GB</Culture>
<Properties>
<Property>
<Key>AOR</Key>
<Value>foo@bar.com</Value>
</Property>
</Properties>
</Event>
</Events>
提前谢谢你们,
Prasun
1 个回答
1
这个方法有效
import cgi
form = cgi.FieldStorage()
form.value
form.value 包含了发送请求时的内容