Skip to main content
 首页 » 编程设计

python之将数据发送到 webservice 的 xml api

2025年05月04日20Terrylee

我正在尝试编写一个基本上与使用 xml api 的 web 服务交互的 python 脚本。请求方式为POST。

通常我会写一个 request(url, data, headers) 形式的请求 - 但是,在 xml api 的情况下,它不起作用。此外,像 data.encode('utf-8') 或 urllib.urlencode(data) 这样的东西也不起作用,因为数据不是字典。

在这种情况下,数据是 xml 那么我应该如何发送它呢?

[编辑] 当我发送一个 XML 字符串时,我收到一个 urllib2.HTTPError: HTTP Error 415: Unsupported Media Type 异常。我应该通过其他方式发送数据吗?

此外,我使用的 API 是 Google Contacts API。我正在尝试编写一个脚本,将联系人添加到我的 Gmail 帐户。

请您参考如下方法:

您可能需要设置正确的 Content-Type header ,对于 XML,它可能是:

application/xml 

所以像这样的事情应该让你继续:

request = urllib2.Request( 'xml_api.example.com' ) 
request.add_header('Content-Type', 'application/xml') 
response = urllib2.urlopen(request, xml_data_string) 

希望对您有所帮助:)