OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This trivial app just loads "cnn.com" using the Mojo Network and URLLoader | 5 // This trivial app just loads "cnn.com" using the Mojo Network and URLLoader |
6 // services and then prints a brief summary of the response. | 6 // services and then prints a brief summary of the response. |
7 // | 7 // |
8 // To run it using mojo_js_standalone (don't forget the quotes): | 8 // To run it using mojo_js_standalone (don't forget the quotes): |
9 // mojo_shell 'mojo://mojo_js_standalone THIS_DIR/main.js' | 9 // mojo_shell 'mojo://js_standalone THIS_DIR/main.js' |
10 // | 10 // |
11 // To run it using mojo_js_content handler this file must be specified as | 11 // To run it using mojo_js_content handler this file must be specified as |
12 // a URL. For example: | 12 // a URL. For example: |
13 // (cd YOUR_DIR/mojo/apps/js; python -m SimpleHTTPServer ) & | 13 // (cd YOUR_DIR/mojo/apps/js; python -m SimpleHTTPServer ) & |
14 // mojo_shell \ | 14 // mojo_shell \ |
15 // --content-handlers=application/javascript,mojo://mojo_js_content_handler \ | 15 // --content-handlers=application/javascript,mojo://js_content_handler \ |
16 // http://localhost:8000/test.js | 16 // http://localhost:8000/test.js |
17 | 17 |
18 define("test", [ | 18 define("test", [ |
19 "mojo/apps/js/mojo", | 19 "mojo/apps/js/mojo", |
20 "mojo/public/js/bindings/core", | 20 "mojo/public/js/bindings/core", |
21 "mojo/public/js/bindings/connection", | 21 "mojo/public/js/bindings/connection", |
22 "mojo/public/js/bindings/support", | 22 "mojo/public/js/bindings/support", |
23 "mojo/services/public/interfaces/network/network_service.mojom", | 23 "mojo/services/public/interfaces/network/network_service.mojom", |
24 "mojo/services/public/interfaces/network/url_loader.mojom", | 24 "mojo/services/public/interfaces/network/url_loader.mojom", |
25 "console" | 25 "console" |
26 ], function(mojo, core, connection, support, net, loader, console) { | 26 ], function(mojo, core, connection, support, net, loader, console) { |
27 | 27 |
28 var networkService = mojo.connectToService( | 28 var networkService = mojo.connectToService( |
29 "mojo:mojo_network_service", net.NetworkService); | 29 "mojo:network_service", net.NetworkService); |
30 | 30 |
31 var urlLoaderPipe = core.createMessagePipe(); | 31 var urlLoaderPipe = core.createMessagePipe(); |
32 networkService.createURLLoader(urlLoaderPipe.handle1); | 32 networkService.createURLLoader(urlLoaderPipe.handle1); |
33 var urlLoaderConnection = new connection.Connection( | 33 var urlLoaderConnection = new connection.Connection( |
34 urlLoaderPipe.handle0, | 34 urlLoaderPipe.handle0, |
35 function(){}, | 35 function(){}, |
36 loader.URLLoader.proxyClass); | 36 loader.URLLoader.proxyClass); |
37 | 37 |
38 var urlRequest = new loader.URLRequest({ | 38 var urlRequest = new loader.URLRequest({ |
39 url: "http://www.cnn.com", | 39 url: "http://www.cnn.com", |
40 method: "GET", | 40 method: "GET", |
41 auto_follow_redirects: true | 41 auto_follow_redirects: true |
42 }); | 42 }); |
43 | 43 |
44 var urlRequestPromise = urlLoaderConnection.remote.start(urlRequest); | 44 var urlRequestPromise = urlLoaderConnection.remote.start(urlRequest); |
45 urlRequestPromise.then(function(result) { | 45 urlRequestPromise.then(function(result) { |
46 for(var key in result.response) | 46 for(var key in result.response) |
47 console.log(key + " => " + result.response[key]); | 47 console.log(key + " => " + result.response[key]); |
48 var drainDataPromise = core.drainData(result.response.body); | 48 var drainDataPromise = core.drainData(result.response.body); |
49 drainDataPromise.then(function(result) { | 49 drainDataPromise.then(function(result) { |
50 console.log("read " + result.buffer.byteLength + " bytes"); | 50 console.log("read " + result.buffer.byteLength + " bytes"); |
51 }).then(function() { | 51 }).then(function() { |
52 mojo.quit(); | 52 mojo.quit(); |
53 }); | 53 }); |
54 }); | 54 }); |
55 }); | 55 }); |
OLD | NEW |