2014-09-22 40 views
0

我想弄清楚如何我可以发送一些数据到Django的视图POST,并返回一些数据,取决于在请求中发送的数据中,通过HttpResponse从视图到客户端。

当POST请求从客户端,Web控制台打印发送,

POST http://<myurl> 
GET http://<myurl>/ 

,返回的信息是“搞定”。在查看方法中,当我尝试通过response.GET.get("key")访问参数时,返回None

我一定是误会了什么,有人知道发生了什么事?

views.py

from django.http import HttpResponse 

    def test(request): 

     msg = "" 

     if request.method == "POST": 
      msg = "post" 

     elif request.method == "GET": 
      msg = "get" 

     return HttpResponse(msg) 

的javascrip/jQuery的

function _req(url, params, callback) { 

    function onResponse(data) { 
     console.log(data);  
     callback(data); 
    }; 

    $.post(
     url, 
     JSON.stringify(params), 
     onResponse, 
     "text"); 
    }; 
+0

您不显示如何调用该方法。 – 2014-09-22 06:56:41

+0

'$ .post'被传入与urls.py中定义的测试相对应的url。 – tAllan 2014-09-22 07:06:50

回答

0

要打印的节目到底发生了什么的两个网址。您发布的网址没有最终斜杠,但是您有默认的APPEND_SLASH设置,所以Django将重定向到带有最后一个斜杠的网址。重定向总是GET。

请确保您使用斜杠发布到URL。