Clase Django HttpRequest:
HttpRequest La clase se usa para manejar la solicitud del cliente que se define en el django.http módulo. Los atributos de esta clase se mencionan a continuación.
Atributos de HttpRequest:
Nombre del Atributo | Propósito |
---|---|
HttpRequest.camino | Este atributo devuelve la ruta completa de la página solicitada. El esquema o dominio no está incluido en el valor devuelto. |
HttpRequest.path_info | La parte de información de ruta de esta ruta se muestra mediante este atributo. |
HttpRequest.método | Este atributo muestra el método HTTP utilizado para la solicitud. |
HttpRequest.esquema | El esquema de la solicitud (HTTP o HTTPs) está representado por este atributo. |
HttpRequest.cuerpo | Este atributo devuelve el cuerpo de la solicitud HTTP sin procesar como una cadena de bytes. |
HttpRequest.OBTENER | Todos los parámetros HTTP GET son devueltos por este atributo como un objeto de diccionario. |
HttpRequest.CORREO | Todos los parámetros HTTP POST son devueltos por este atributo como un objeto de diccionario. |
HttpRequest.GALLETAS | Todas las cookies disponibles son devueltas por este atributo. |
HttpRequest.ARCHIVOS | Todos los archivos cargados están incluidos en este atributo. |
HttpRequest.META | Todos los encabezados HTTP disponibles se muestran con este atributo. |
HttpRequest.tipo de contenido | Este atributo muestra el tipo MIME de la solicitud que se analiza desde el encabezado CONTENT_TYPE. |
HttpRequest.content_params | Este atributo devuelve un objeto de diccionario que se incluye en el encabezado CONTENT_TYPE. |
HttpRequest.codificacion | Este atributo muestra la codificación actual utilizada para decodificar los datos del formulario enviado. |
Métodos HttpRequest:
Método | Propósito |
---|---|
HttpRequest.get_host () | Se utiliza para devolver el nombre de host real de la solicitud. |
HttpRequest.get_full_path () | Se utiliza para devolver la ruta y la cadena de consulta si está disponible. |
HttpRequest.get_port () | Se utiliza para devolver el número de puerto de la solicitud. |
HttpRequest.es_seguro () | Si la solicitud se realiza mediante HTTPS, se devuelve como Verdadero; de lo contrario, es Falso. |
HttpRequest.is_ajax () | Si la solicitud se realiza mediante XMLHttpRequest, devuelve True en caso contrario False. |
HttpRequest.build_absolute_uri (localización) | Se utiliza para devolver la ubicación URI absoluta. |
HttpRequest.get_signed_cookie (clave, predeterminado = RAISE_ERROR, salt = ”, max_age = Ninguno) | Se usa para devolver el valor de la cookie para una cookie firmada o genera un django.centro.firma.Excepción BadSignature para la firma no válida. |
Django HttpResponse:
HttpResponse La clase se usa para manejar la respuesta del cliente que se define en el django.http módulo. Los atributos de esta clase se mencionan a continuación.
Atributos de HttpResponse:
Nombre del Atributo | Propósito |
---|---|
HttpResponse.código de estado | Este atributo devuelve el código de estado HTTP de la respuesta |
HttpResponse.juego de caracteres | El conjunto de caracteres que se utiliza para codificar la respuesta está definido por este atributo. |
HttpResponse.transmisión | El valor predeterminado de este atributo es falso. |
HttpResponse.contenido | El contenido está representado en una cadena de bytes por este atributo. |
HttpResponse.razon_frase | La frase de motivo HTTP de la respuesta está definida por este atributo. |
HttpResponse.cerrado | Cuando se cierra la respuesta, este atributo devolverá True. |
Métodos HttpResponse:
Método | Descripción |
---|---|
HttpResponse.__en eso__(contenido = ”, tipo_contenido = Ninguno, estado = 200, motivo = Ninguno, juego de caracteres = Ninguno) | Este método inicia un objeto HttpResponse con el contenido de página y el tipo de contenido dados. |
HttpResponse.__obtiene el objeto__(encabezamiento) | Este método devuelve el valor del nombre del encabezado particular. |
HttpResponse.__setitem__(encabezado, valor) | El valor particular se establece en el nombre del encabezado particular mediante este método. |
HttpResponse.__delitem__(encabezamiento) | Este método elimina el nombre del encabezado particular. |
HttpResponse.establecer predeterminado(encabezado, valor) | El valor de encabezado predeterminado se establece mediante este método. |
HttpResponse.has_header(encabezamiento) | La existencia del nombre de encabezado particular se verifica mediante este método. |
HttpResponse.escribir(contenido) | El objeto de respuesta similar a un archivo se crea mediante este método. |
HttpResponse.getvalue () | El valor de HttpResponse.el contenido se recupera mediante este método. |
HttpResponse.legible() | El objeto similar a una secuencia de la clase HttpResponse es creado por este método. |
HttpResponse.buscable () | Este método se utiliza para hacer que el objeto de respuesta se pueda buscar. |
HttpResponse.contar() | Este método se utiliza para crear una instancia de HttpResponse como un objeto similar a un archivo. |
HttpResponse.enjuagar() | Este método se utiliza para vaciar el objeto de respuesta. |
Requisitos previos:
Antes de practicar el guión de este tutorial, debe completar las siguientes tareas:
A. Instale Django versión 3+ en Ubuntu 20+ (preferiblemente)
B. Crea un proyecto de Django
C. Ejecute el servidor Django para comprobar si el servidor funciona correctamente o no.
Configura una aplicación Django:
A. Ejecute el siguiente comando para crear una aplicación Django llamada reqresapp.
$ python3 administrar.py startapp reqresappB. Ejecute el siguiente comando para crear un usuario para acceder a la base de datos de Django. Si ha creado el usuario antes, no necesita ejecutar el comando.
$ python3 administrar.py crea superusuarioC. Agregue el nombre de la aplicación en el INSTALLED_APP parte de ajustes.pagy archivo.
INSTALLED_APPS = [..
'reqresapp'
]
Modifique los archivos necesarios:
Modificar las vistas.py archivo con el siguiente script. La índice() La función del script leerá la ruta de solicitud, el método y el agente de usuario utilizando tres HttpRequest atributos. A continuación, estos valores se enviarán al navegador utilizando HttpResponse () método.
puntos de vista.py
# Importar HttResponsede django.http import HttpResponse
# Definir función para manejar solicitud y respuesta
def index (solicitud):
ruta = solicitud.camino
método = solicitud.método
userAgent = solicitud.META ['HTTP_USER_AGENT']
# la solicitud se maneja usando el objeto HttpResponse
return HttpResponse ("
Prueba del ciclo de respuesta a solicitudes de Django
"
"
Ruta de solicitud: "+ ruta +
"
"
Agente de usuario: "+ userAgent +"
Modificar las URL.py con el siguiente script para definir la ruta para llamar al índice() función de la puntos de vista.py expediente.
urls.py
# Ruta de importaciónde django.ruta de importación de URL
# Vista de importación
de reqresapp.índice de importación de vistas
# Definir ruta
urlpatterns = [
ruta (", índice),
]
Ejecute el siguiente comando para iniciar el servidor Django.
$ python3 administrar.py runserverEjecute la siguiente URL desde el navegador para verificar el resultado de la aplicación.
http: // localhost: 8000
La siguiente salida muestra los valores de tres atributos HttpRequest enviados por HttpResponse.
Conclusión:
En este tutorial se muestra cómo se pueden usar los diferentes atributos y métodos de HttpRequest y HttpResponse en la aplicación Django. Los usuarios de Django podrán usar los objetos de solicitud y respuesta de Django después de leer este tutorial.