我正在使用django 1.8和djangorestframework创建一个rest api,并使用extjs 6.2创建客户端,当我向服务器发送ajax请求时,我收到此错误 的' WSGIRequest'对象没有属性' query_params' 我的视图正在接收WSGIRequest对象而不是Request 对象,困扰我的是我现在在创建任何视图时遇到此错误,所有其他(以前创建的)工作正常,这里是我的MIDDLEWARE_CLASSES
MIDDLEWARE_CLASSES = (
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
'corsheaders.middleware.CorsMiddleware',)
这里是django视图和extjs ajax请求
django视图
api_view(["GET"])
def testView(request):
print(request.__class__)
req = json.loads(request.query_params['array'])# here it gives the error
lolo = {"response":"data"}
return JsonResponse(data, safe=False)
extjs Ajax请求
var data = 'insert':{idlineapresupuesto_id:1, idusuario_id:1, nombre:"aaaaaa"}
Ext.Ajax.request({
url :"http://127.0.0.1:8000/editarConcGastosView/?format=json",
method: 'GET',
dataType: 'json',
params: {array: Ext.JSON.encode(data)},
success : function(response){
var jsonResp = Ext.util.JSON.decode(response.responseText);//Guarda en jsonResp la respuesta de la peticion
答案 0 :(得分:0)
您没有正确使用装饰器:您需要@
。
@api_view(["GET"])
def testView(request):