Django http.request
Verfasst: Samstag 23. April 2016, 18:51
Hallo Jungs bin neu hier und auch ein Programmier- Python- Anfänger.
Ich will eine App entwickeln die ein HTTP-POST Request abfängt und den Inhalt "XML" in einer Datenbank abspeichert.
Zu der Umgebung:
Ich habe einen Ubuntu Server mit Apache2, mod_wsgi für die Übergabe von Apache zum Python-Script und Django als Framework.
Als DB wird MySql gebraucht und die Schnittstelle zu Python ist PyMySQL.
So die Umgebung funktioniert.
Ich habe auch das Django-Tutorial gemacht. (Aber mein Englisch ist solala
)
So zu meiner Frage, Ich will die die Request-methode, den Content-Type, die Content-Lenght und die Query-String überprüfen.
Das überprüfen der Request-Methode ist gegangen, aber das überprüfen der anderen Sachen funktioniert irgendwie nicht.
Habe die Funktion "checkcontent" auskommentiert.
Kann mir jemand erklären wie das Http.request.META funktioniert?
vielen Dank!
Boxeur91
Ich will eine App entwickeln die ein HTTP-POST Request abfängt und den Inhalt "XML" in einer Datenbank abspeichert.
Zu der Umgebung:
Ich habe einen Ubuntu Server mit Apache2, mod_wsgi für die Übergabe von Apache zum Python-Script und Django als Framework.
Als DB wird MySql gebraucht und die Schnittstelle zu Python ist PyMySQL.
So die Umgebung funktioniert.
Ich habe auch das Django-Tutorial gemacht. (Aber mein Englisch ist solala

So zu meiner Frage, Ich will die die Request-methode, den Content-Type, die Content-Lenght und die Query-String überprüfen.
Das überprüfen der Request-Methode ist gegangen, aber das überprüfen der anderen Sachen funktioniert irgendwie nicht.
Habe die Funktion "checkcontent" auskommentiert.
Kann mir jemand erklären wie das Http.request.META funktioniert?
Code: Alles auswählen
from django.views.decorators.csrf import csrf_exempt
from django.shortcuts import render
from django.http import (
HttpResponse, HttpResponseNotAllowed, HttpRequest,)
@csrf_exempt
# Check the HTTP Request Method
def app(request):
if request.method != "POST":
return HttpResponseNotAllowed(permitted_methods=('POST',))
else:
# checkcontent(request)
return HttpResponse('OK')
“““
def checkcontent(request):
if not 'application/xml' in request.meta['CONTENT_TYPE']:
raise Exception("Invalid content-type. The expected request content-type is 'application/xml'")
“““
vielen Dank!
Boxeur91