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