| Index: sky/sdk/lib/mojo/net/fetch.dart
|
| diff --git a/sky/sdk/lib/mojo/net/fetch.dart b/sky/sdk/lib/mojo/net/fetch.dart
|
| index 834112c01e6565ff857d1b3671da8f59e75a8885..dd3834e66cd0c6c332acb6d163deeec0603f0291 100644
|
| --- a/sky/sdk/lib/mojo/net/fetch.dart
|
| +++ b/sky/sdk/lib/mojo/net/fetch.dart
|
| @@ -19,22 +19,28 @@ class Response {
|
| Response(this.body);
|
|
|
| String bodyAsString() {
|
| + if (body == null)
|
| + return null;
|
| return new String.fromCharCodes(new Uint8List.view(body.buffer));
|
| }
|
| }
|
|
|
| Future<UrlResponse> fetch(UrlRequest request) async {
|
| - NetworkServiceProxy net = new NetworkServiceProxy.unbound();
|
| - shell.requestService("mojo:authenticated_network_service", net);
|
| + try {
|
| + NetworkServiceProxy net = new NetworkServiceProxy.unbound();
|
| + shell.requestService("mojo:authenticated_network_service", net);
|
|
|
| - UrlLoaderProxy loader = new UrlLoaderProxy.unbound();
|
| - net.ptr.createUrlLoader(loader);
|
| + UrlLoaderProxy loader = new UrlLoaderProxy.unbound();
|
| + net.ptr.createUrlLoader(loader);
|
|
|
| - UrlResponse response = (await loader.ptr.start(request)).response;
|
| + UrlResponse response = (await loader.ptr.start(request)).response;
|
|
|
| - loader.close();
|
| - net.close();
|
| - return response;
|
| + loader.close();
|
| + net.close();
|
| + return response;
|
| + } catch (e) {
|
| + return new UrlResponse()..statusCode = 500;
|
| + }
|
| }
|
|
|
| Future<UrlResponse> fetchUrl(String relativeUrl) async {
|
|
|