OLD | NEW |
| (Empty) |
1 #!mojo mojo:sky_viewer | |
2 <sky> | |
3 <script> | |
4 import 'dart:async'; | |
5 import 'dart:typed_data'; | |
6 import "dart:sky.internals" as internals; | |
7 | |
8 import 'package:mojo/bindings.dart'; | |
9 import 'package:mojo/core.dart'; | |
10 import 'package:mojom/mojo/network_service.mojom.dart'; | |
11 import 'package:mojom/mojo/url_request.mojom.dart'; | |
12 import 'package:mojom/mojo/url_loader.mojom.dart'; | |
13 | |
14 import 'package:sky/mojo/embedder.dart'; | |
15 | |
16 Future<String> run(url) async { | |
17 var networkService= new NetworkServiceProxy.unbound(); | |
18 embedder.connectToService("mojo:authenticated_network_service", | |
19 networkService); | |
20 | |
21 var urlLoader = new UrlLoaderProxy.unbound(); | |
22 networkService.ptr.createUrlLoader(urlLoader); | |
23 | |
24 var urlRequest = new UrlRequest() | |
25 ..url = url | |
26 ..autoFollowRedirects = true; | |
27 var urlResponse = await urlLoader.ptr.start(urlRequest); | |
28 | |
29 urlLoader.close(); | |
30 networkService.close(); | |
31 | |
32 print("url => ${urlResponse.response.url}"); | |
33 print("status_line => ${urlResponse.response.statusLine}"); | |
34 print("mime_type => ${urlResponse.response.mimeType}"); | |
35 | |
36 ByteData bodyData = | |
37 await DataPipeDrainer.drainHandle(urlResponse.response.body); | |
38 print("read ${bodyData.lengthInBytes} bytes"); | |
39 | |
40 return new String.fromCharCodes(new Uint8List.view(bodyData.buffer)); | |
41 } | |
42 | |
43 main() async { | |
44 var url = "http://127.0.0.1:8000/sky/tests/services/resources/pass.txt"; | |
45 var result = await run(url); | |
46 internals.notifyTestComplete(result); | |
47 } | |
48 </script> | |
49 </sky> | |
OLD | NEW |