我有一个简单的html服务,在django开发。 你输入你的名字 - 它发布这个,并返回一个值(男/女)。通过http网络服务的简单XML
我需要将此作为Web服务。我不知道从哪里开始。
我想接受一个XML请求,并提供一个XML响应 - 这就是它。
任何人都可以给任何指针 - 谷歌搜索很难,当你不知道你在寻找什么。
我有一个简单的html服务,在django开发。 你输入你的名字 - 它发布这个,并返回一个值(男/女)。通过http网络服务的简单XML
我需要将此作为Web服务。我不知道从哪里开始。
我想接受一个XML请求,并提供一个XML响应 - 这就是它。
任何人都可以给任何指针 - 谷歌搜索很难,当你不知道你在寻找什么。
请参阅django书中的Generating non-HTML content以获取说明。
基本上,它是如此简单:
def get_data(request, xml_data):
data = parse_xml_data(xml_data)
return_data = create_xml_blob(data)
return HttpResponse(return_data, mimetype='application/xml')
编辑:
您可以发送xml_data设置为XML字符串后,也可以发送一个XML请求。
下面是XML数据发送到Web服务,改编自this site一些代码:
xml_data = """<?xml version="1.0" encoding="UTF-8"?>
<root>my data here</root>
"""
#construct and send the header
webservice = httplib.HTTP("example.com")
webservice.putrequest("POST", "/rcx-ws/rcx")
webservice.putheader("Host", "example.com")
webservice.putheader("User-Agent", "Python post")
webservice.putheader("Content-type", "text/xml; charset=\"UTF-8\"")
webservice.putheader("Content-length", "%d" % len(xml_data))
webservice.endheaders()
webservice.send(xml_data)
从Django中,你会使用request.raw_post_data
直接在XML来获得。
我不担心生成非html内容。接受一个XML请求是我想要做的。 – Mark 2010-05-13 11:24:43
发送一个帖子,将变量xml_data设置为你的xml数据。以utf-8编码。 – 2010-05-13 12:39:11
在“SOAP”上搜索。 – 2010-05-13 10:35:52