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 /** | 5 /** |
6 * @fileoverview Implements a simple XmlHttpRequest-based text document | 6 * @fileoverview Implements a simple XmlHttpRequest-based text document |
7 * fetcher. | 7 * fetcher. |
8 * | 8 * |
9 */ | 9 */ |
10 'use strict'; | 10 'use strict'; |
(...skipping 10 matching lines...) Expand all Loading... |
21 * @param {string?} opt_body The request body | 21 * @param {string?} opt_body The request body |
22 * @return {!Promise<string>} A promise for the fetched text. In case of an | 22 * @return {!Promise<string>} A promise for the fetched text. In case of an |
23 * error, this promise is rejected with an HTTP status code. | 23 * error, this promise is rejected with an HTTP status code. |
24 */ | 24 */ |
25 TextFetcher.prototype.fetch = function(url, opt_method, opt_body) {}; | 25 TextFetcher.prototype.fetch = function(url, opt_method, opt_body) {}; |
26 | 26 |
27 /** | 27 /** |
28 * @constructor | 28 * @constructor |
29 * @implements {TextFetcher} | 29 * @implements {TextFetcher} |
30 */ | 30 */ |
31 function XhrTextFetcher() { | 31 function XhrTextFetcher() {} |
32 } | |
33 | 32 |
34 /** | 33 /** |
35 * @param {string} url The URL to fetch. | 34 * @param {string} url The URL to fetch. |
36 * @param {string?} opt_method The HTTP method to use (default GET) | 35 * @param {string?} opt_method The HTTP method to use (default GET) |
37 * @param {string?} opt_body The request body | 36 * @param {string?} opt_body The request body |
38 * @return {!Promise<string>} A promise for the fetched text. In case of an | 37 * @return {!Promise<string>} A promise for the fetched text. In case of an |
39 * error, this promise is rejected with an HTTP status code. | 38 * error, this promise is rejected with an HTTP status code. |
40 */ | 39 */ |
41 XhrTextFetcher.prototype.fetch = function(url, opt_method, opt_body) { | 40 XhrTextFetcher.prototype.fetch = function(url, opt_method, opt_body) { |
42 return new Promise(function(resolve, reject) { | 41 return new Promise(function(resolve, reject) { |
(...skipping 10 matching lines...) Expand all Loading... |
53 xhr.onerror = function() { | 52 xhr.onerror = function() { |
54 // Treat any network-level errors as though the page didn't exist. | 53 // Treat any network-level errors as though the page didn't exist. |
55 reject(404); | 54 reject(404); |
56 }; | 55 }; |
57 if (opt_body) | 56 if (opt_body) |
58 xhr.send(opt_body); | 57 xhr.send(opt_body); |
59 else | 58 else |
60 xhr.send(); | 59 xhr.send(); |
61 }); | 60 }); |
62 }; | 61 }; |
OLD | NEW |