服务器响应的Ajax / JSON状态为415(不支持的媒体类型)

时间:2012-03-16 13:29:01

标签: javascript jquery ajax json live

我正在处理的当前项目要求我与windows live API交谈。我使用AJAX请求来接收带有用户详细信息的JSON对象。 我怎么会一直收到这个错误: 无法加载资源:服务器响应状态为415(不支持的媒体类型)

我的第一个想法是添加“& callback =?”网址。但后来我在JSON响应中得到“Uncaught SyntaxError:Unexpected token:”

我一直在搜索如何修复错误。但是找不到两种错误的可行解决方案。最重要的是,如果我不确定我应该尝试解决哪个错误(状态415或意外令牌)。任何指向我正确方向的东西都会非常感激!

$.ajax({
        url: "https://apis.live.net/v5.0/me?access_token=" + localStorage.getItem('Live_token'),
        dataType: 'json',
        type : 'GET',
        contentType: "application/json;",
        async: false,
        success : function(data) {
            var id = data.id,
            fname = data.last_name,
            email = data.emails.preferred;//TODO preferred or account?
            alert(id + '|' + fname + '|' + email);
            localStorage.setItem('Live_verifier', id + '|' + fname + '|' + email);
        },
        error : function(data) {
            localStorage.removeItem('Live_token');
        }
    });

提前致谢

1 个答案:

答案 0 :(得分:2)

您是否尝试过设置

dataType: 'jsonp',

和网址中的"&callback=?"?您正在调用其他域上的服务器,因此您必须将jsonp设置为dataType