Py学习  »  问与答

getJSON接收不到Django-rest-framework的json数据

好梦一场睡-weibo • 8 年前 • 3105 次点击  

大家有没有使用 Django-rest-framework的,我按照官方的文档,操作了一下,把那个例子弄了一遍,然后我想弄一个web网页显示,用的是JQuery,为什么我是用getJSON获取数据,什么反应都没有,而且后台也没收到请求,但是在浏览器中输入却可以返回json数据,这是怎么回事?

这是我获取json的js代码:

$("button").click(function(){
            $.getJSON("{% url 'snippet-list' %}?format=json", function(data,textStatus){
                alert(textStatus);
            });
        });

浏览器访问链接:http://192.168.232.129:8080/snippet/?format=json 返回数据(部分):

{"count":6,"next":null,"previous":null,"results":[{"url":"http://192.168.232.129:8080/snippet/2?format=json","highlight":"http://192.168.232.129:8080/snippet/2/highlight/?format=json","owner":"li","title":"zlier","code":"#include <stdio.h>\r\nint main()\r\n{\r\n printf(\"wozaoci\n\");\r\n return 0;\r\n}","linenos":false,"language":"c","style":"bw"},

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/1328
 
3105 次点击  
文章 [ 3 ]  |  最新文章 8 年前
MCC
Reply   •   1 楼
MCC    8 年前

我想到个很搓的招儿,把json的这段改成console.log("{% url 'snippet-list' %}?format=json"),看看是地址给错了还是这里js不让用模板渲染啥。。

好梦一场睡-weibo
Reply   •   2 楼
好梦一场睡-weibo    8 年前

@$yann 我在chrome试了一下,显示访问被拒绝,然后我发现我直接使用python manage.py runserver启动的,这个是单用户的,换成uwsgi启动就可以获取了,但是遇到了另一个问题,我在firebug里运行这条JavaScript语句获取到数据,但是直接点击button却获取不到?不知道怎么回事?

$yann
Reply   •   3 楼
$yann    8 年前

我觉得应该是你的`tJSON("{% url 'snippet-list' %}这部分有问题,这儿不能使用django的模板语言,所以才会没有反应吧