Servir du XML
Autres langages english | … |
Probleme
Comment servir des fichiers XML correctement?
Cela est nécessaire lorsque vous avez une application tierce postant des données au service et attendant une réponse XML.
Solution
Créez votre gabarit XML avec le fichier XML que vous souhaitez servir (par exemple : response.xml). Si le XML a des variables, utilisez le code gabarit correspondant de web.py comme dans cet exemple:
$def with (code)
<?xml version="1.0"?>
<RequestNotification-Response>
<Status>$code</Status>
</RequestNotification-Response>
Pour servir ce fichier, créez un programme standard web.py ( par exemple: response.py) et utilisez le code suivant. Soyez conscient que vous devez utiliser web.header('Content-Type', 'text/xml')
pour dire au client que vous envoyez un fichier XML. (Vous n’avez pas besoin de définir explicitement l’en-tête des fichiers XML si votre fichier gabarit a l’extension ‘.xml’ )
import web
render = web.template.render('templates/', cache=False)
urls = (
'/(.*)', 'index'
)
app = web.application(urls, globals())
class index:
def GET(self, code):
web.header('Content-Type', 'text/xml')
return render.index(code)
web.webapi.internalerror = web.debugerror
if __name__ == '__main__': app.run()