equal
deleted
inserted
replaced
|
1 YUI.add('yql-winjs', function (Y, NAME) { |
|
2 |
|
3 /** |
|
4 * WinJS plugin for YQL to use native XHR to make requests instead of JSONP. |
|
5 * Not required by the user, it's conditionally loaded and should "just work". |
|
6 * @module yql |
|
7 * @submodule yql-winjs |
|
8 */ |
|
9 |
|
10 //Over writes Y.YQLRequest._send to use IO instead of JSONP |
|
11 Y.YQLRequest.prototype._send = function (url, o) { |
|
12 var req = new XMLHttpRequest(), |
|
13 timer; |
|
14 |
|
15 req.open('GET', url, true); |
|
16 req.onreadystatechange = function () { |
|
17 if (req.readyState === 4) { //Complete |
|
18 //No status code check here, since the YQL service will return JSON |
|
19 clearTimeout(timer); |
|
20 //No need to "call" this, YQL handles the context |
|
21 o.on.success(JSON.parse(req.responseText)); |
|
22 } |
|
23 }; |
|
24 req.send(); |
|
25 |
|
26 //Simple timer to catch no connections |
|
27 timer = setTimeout(function() { |
|
28 req.abort(); |
|
29 o.on.timeout('script timeout'); |
|
30 }, o.timeout || 30000); |
|
31 }; |
|
32 |
|
33 |
|
34 }, '@VERSION@'); |