无法使用json在jquery中使用ajax请求

时间:2015-09-28 20:07:33

标签: javascript jquery json ajax angularjs

这是针对名为cytu.be的socket.io聊天网站。我知道msg代码是正确的。我想ajax不是出于某种原因在这里工作。我发现这个cors-server链接来自github上的一些angularjs代码,认为它可能有效。是否有可能使这个链接工作? (警告:对不起,它中有明确的色情词)

        if (msg.indexOf('$add ') === 0) {
            term = msg.split('$add ')[1].split(",");
            surl = 'http://cors-server.getup.io/url/api.redtube.com/?data=redtube.Videos.searchVideos&search='+term;
            $.ajax({url: surl,
                dataType: 'json',
                success: function(data) {
                    console.log(data);
                    Data = JSON.parse(data.responseText),
                    socket.emit("chatMsg", {
                        msg: Data.videos[0].video.video_id
                    });
                }
            });
        }

1 个答案:

答案 0 :(得分:0)

如果您将dataType设置为json,则不需要JSON.parse()响应,因为jQuery将为您执行解析。在您的情况下,这意味着您需要更改此行:

Data = JSON.parse(data.responseText), // note you also have typo here as this should be semicolon at end of line not a comma

到此:

Data = data.responseText;

很难说你是否有任何其他问题(即与CORS相关的问题),因为你没有在你的问题中发布任何调试信息。这些问题肯定应该修复。