Files
NativeScript/http/http.ts
2014-05-15 12:13:58 +03:00

49 lines
1.3 KiB
TypeScript

import image_module = require("image/image");
import promises = require("promises/promises");
import http = require("http/http-request");
// merge request
export var request = http.request;
export interface HttpResponse extends http.HttpResponse { };
export interface HttpRequestOptions extends http.HttpRequestOptions { };
export interface HttpContent extends http.HttpContent { };
/**
* Gets string from url.
*/
export function getString(url: string): promises.Promise<string> {
var d = promises.defer<string>();
http.request({ url: url, method: "GET" })
.then(r => d.resolve(r.content.toString()))
.fail(e => d.reject(e));
return d.promise();
}
/**
* Gets JSON from url.
*/
export function getJSON<T>(url: string): promises.Promise<T> {
var d = promises.defer<T>();
http.request({ url: url, method: "GET" })
.then(r => d.resolve(r.content.toJSON()))
.fail(e => d.reject(e));
return d.promise();
}
/**
* Gets image from url.
*/
export function getImage(url: string): promises.Promise<image_module.Image> {
var d = promises.defer<image_module.Image>();
http.request({ url: url, method: "GET" })
.then(r => d.resolve(r.content.toImage()))
.fail(e => d.reject(e));
return d.promise();
}