在Django中处理HTTP请求和响应主要是通过视图函数来实现的。视图函数是一个Python函数,接收HTTP请求作为参数,并返回HTTP响应作为输出。
处理HTTP请求:
- 定义视图函数:在views.py文件中定义视图函数,函数接收一个HttpRequest对象作为参数,可以通过该对象获取请求的方法、路径、参数等信息。
from django.http import HttpResponse def my_view(request): # 获取请求参数 param_value = https://www.yisu.com/ask/request.GET.get('param_key', '') # 处理请求逻辑 ... return HttpResponse('Response content')
- 配置URL路由:在urls.py文件中配置URL路由,将请求路径映射到对应的视图函数。
from django.urls import path from .views import my_view urlpatterns = [ path('my_route/', my_view), ]
处理HTTP响应:
- 构造HttpResponse对象:在视图函数中,可以通过HttpResponse类来构造响应对象,传入响应内容、状态码等参数。
from django.http import HttpResponse def my_view(request): # 处理请求逻辑 ... # 构造响应对象 response = HttpResponse('Response content', status=200) return response
- 返回Json响应:如果需要返回Json格式的响应,可以使用JsonResponse类。
from django.http import JsonResponse def my_view(request): # 处理请求逻辑 ... # 构造Json响应 response_data = https://www.yisu.com/ask/{'key': 'value'} response = JsonResponse(response_data) return response