headers are now similar to jquery + readme updated

This commit is contained in:
Vladimir Enchev
2014-04-24 16:50:46 +03:00
parent 62d67c0fac
commit 3d8602c58c
4 changed files with 32 additions and 42 deletions

View File

@ -34,34 +34,31 @@
http.request({
url: "http://ip.jsontest.com/",
method: "GET",
headers: [{ name: "Content-Type", value: "application/json" }]
headers: { "Content-Type" : "application/json" }
}).then(function (r) {
var status = r.statusCode;
for (var i = 0, l = r.headers.length; i < l; i++) {
var header = r.headers[i];
for (var header in r.headers) {
//
}
var result = r.content.toJSON();
}).fail(function (e) { });
// Post request
http.request({
url: "http://posttestserver.com/post.php?dump&html&dir=test",
method: "POST",
headers: [{ name: "Content-Type", value: "application/x-www-form-urlencoded" }],
headers: { "Content-Type" : "application/x-www-form-urlencoded" },
content: "MyVariableOne=ValueOne&MyVariableTwo=ValueTwo"
}).then(function (r) {
log("Status code:" + r.statusCode);
var status = r.statusCode;
for (var i = 0, l = r.headers.length; i < l; i++) {
var header = r.headers[i];
log(header.name + ":" + header.value);
for (var header in r.headers) {
//
}
log("Content:" + r.content.toString())
var result = r.content.toJSON();
}).fail(function (e) { log(e) });
http.getString("http://www.reddit.com/").then(function(result) {

View File

@ -11,10 +11,9 @@ export function request(options: http.HttpRequestOptions): promises.Promise<http
try {
var headers = new com.koushikdutta.async.http.libcore.RawHeaders();
if (options.headers && options.headers.length) {
for (var i = 0, l = options.headers.length; i < l; i++) {
var header = options.headers[i];
headers.add(header.name, header.value)
if (options.headers) {
for (var key in options.headers) {
headers.add(key, options.headers[key])
}
}
@ -37,7 +36,7 @@ export function request(options: http.HttpRequestOptions): promises.Promise<http
toImage: () => { return require("Image/image").Image.imageFromNativeBitmap(data); }
},
statusCode: 0,
headers: []
headers: {}
});
}
}

View File

@ -9,18 +9,13 @@ export declare function request(options: HttpRequestOptions): promises.Promise<H
export interface HttpRequestOptions {
url: string;
method: string;
headers?: HttpHeader[];
headers?: any;
content?: any;
}
export interface HttpHeader {
name: string;
value: string;
}
export interface HttpResponse {
statusCode: number;
headers: HttpHeader[];
headers: any;
content?: HttpContent;
}

View File

@ -16,13 +16,13 @@ export function request(options: http.HttpRequestOptions): promises.Promise<http
var urlRequest = Foundation.NSMutableURLRequest.requestWithURL(
Foundation.NSURL.URLWithString(options.url));
if (options.method) {
urlRequest.setHTTPMethod(options.method);
}
if (options.headers && options.headers.length) {
for (var i = 0, l = options.headers.length; i < l; i++) {
var header = options.headers[i];
urlRequest.setValueForHTTPHeaderField(header.name, header.value);
if (options.headers) {
for (var header in options.headers) {
urlRequest.setValueForHTTPHeaderField(options.headers[header], header);
}
}
@ -36,14 +36,13 @@ export function request(options: http.HttpRequestOptions): promises.Promise<http
d.reject(new Error(error.localizedDescription()));
} else {
var headers = new Array<http.HttpHeader>();
var headers = {};
var headerFields = response.allHeaderFields();
var keys = headerFields.allKeys();
for (var i = 0, l = keys.count(); i < l; i++) {
var key = keys.objectAtIndex(i);
headers.push({ name: key, value: headerFields.valueForKey(key) });
headers[key] = headerFields.valueForKey(key);
}
d.resolve({