[Python-Webservice]: как возвращать и использовать в формате XML на Flask - PullRequest
1 голос
/ 23 марта 2012

В настоящее время я создаю RESTful веб-сервис на python с использованием flask. Теперь на стороне клиента, которая будет использовать / реализовывать API веб-сервиса, я хочу получить вывод в формате XML (или JSON). У вас есть идеи, как это сделать? Я уже пробовал jsonify, но безуспешно. Кроме того, я предпочитаю формат XML в выводе, но опять же, я не знаю, как это сделать. Поэтому я надеюсь, что кто-то может дать мне идеи.

Ниже приведены фиктивные фрагменты кода, которые, надеюсь, прояснят мой вопрос:

/*** webservice ***/
from flask import Flask, jsonify
app = Flask(__name__)

@app.route("/")
def hello_world():
   return jsonify(message = "hello world!")

if __name__ == "__main__":
   app.run()

/*** client code ***/
import urllib2
server = "http://localhost:5000/"
req = urllib2.Request(server)
# req has no data at all :(

Надеемся получить отзыв. Чем = ks заранее

1 Ответ

0 голосов
/ 23 марта 2012

Серверный код работает нормально.Вам следует протестировать его с помощью обычного веб-браузера, и вы увидите ответ json.Ваш код клиента не завершен.Вот мое исправление:

import urllib2
server = "http://localhost:5000/"
req = urllib2.Request(server)
response = urllib2.urlopen(req)
print response.read()

Лучший способ сделать http-запросы в python - это использовать модуль запросов , который обеспечивает очень простой, но очень мощный API.

Для построения xml-ответа я бы порекомендовал lxml с его классным модулем etree.Существует также модуль etree в стандартной библиотеке под xml.etree.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...