MooTools JSONP请求不适用于无效密码

时间:2010-01-09 16:49:02

标签: javascript ajax json mootools jsonp

我使用MooTools发出JSONP请求:

var username = 'hsz';
var password = 'pass';
var req = new Request.JSONP({
    url: 'http://api.blip.pl/profile.json',
    method: 'get',
    headers: {
        'Authorization' : 'Basic ' + Base64.encode(username + ':' + password),
        'Accept'        : 'application/json',
        'Content-Type'  : 'application/json',
        'X-blip-api'    : '0.02'
    },
    onSuccess: function(res){ alert('success'); },
    onFailure: function(res){ alert('failure'); }
}).send();

使用有效的登录名和密码,工作正常(提醒我success) 当我将password更改为无效值时,它不会执行任何操作 我不知道为什么它表现得很糟糕。
使用Request.JSON()时也是如此。 有什么想法吗?

3 个答案:

答案 0 :(得分:0)

可能是服务没有响应任何事情,如果密码或用户ID或两者都错误,它无法验证/授权请求只留下任何黑客!

答案 1 :(得分:0)

我认为 onFailure 只是Request类在XHR请求失败时触发的事件。如果您无法进行身份验证,那么并不意味着它无法触发Request实例,只是未能获得预期的结果。

在1.2.4.x中,request.jsonp支持可选日志(已实现的控制台包装类日志) - 将 log:true 添加到类选项中,并查看它尝试在firebug中引发的事件。

另外,您可以将处理程序更改为 onComplete 并插入返回的json,以确定它基于数据的成功程度(而不是 onSuccess

答案 2 :(得分:0)

在JSONP类中有一个超时属性。默认情况下设置为0并且未触发onFailure。

我设置超时:1,现在onFailure被触发。