Skip to content

Commit 451b4fc

Browse files
committed
feat!: useLegacy is now default =>
* Your answer handling needs to be updated. `content` is now of type [HttpsResponseLegacy](https://github.com/farfromrefug/nativescript-https/blob/c7b8c935a6b02dc4f9e5c20c6911b2e59db8fa64/src/https.common.ts#L74) * `useLegacy` is not a request option anymore it is now the second optional parameter to the [request](https://github.com/farfromrefug/nativescript-https/blob/c7b8c935a6b02dc4f9e5c20c6911b2e59db8fa64/src/https.d.ts#L7) method
1 parent c7b8c93 commit 451b4fc

File tree

4 files changed

+14
-17
lines changed

4 files changed

+14
-17
lines changed

src/https.android.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -389,7 +389,7 @@ const notClosedResponses: {
389389
const runningClients: { [k: string]: okhttp3.OkHttpClient } = {};
390390

391391
let OkHttpResponse: typeof com.nativescript.https.OkHttpResponse;
392-
export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsRequest {
392+
export function createRequest(opts: Https.HttpsRequestOptions, useLegacy: boolean = true): Https.HttpsRequest {
393393
const client = getClient(false, opts.timeout);
394394

395395
const request = new okhttp3.Request.Builder();
@@ -468,7 +468,7 @@ export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsReque
468468
// We have to allow networking on the main thread because larger responses will crash the app with an NetworkOnMainThreadException.
469469
// Note that it would probably be better to offload it to a Worker or (natively running) AsyncTask.
470470
// Also note that once set, this policy remains active until the app is killed.
471-
if (opts.useLegacy === false && opts.allowLargeResponse) {
471+
if (useLegacy === false && opts.allowLargeResponse) {
472472
android.os.StrictMode.setThreadPolicy(android.os.StrictMode.ThreadPolicy.LAX);
473473
}
474474
return {
@@ -494,7 +494,7 @@ export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsReque
494494
}
495495
return headers;
496496
};
497-
if (opts.useLegacy) {
497+
if (useLegacy) {
498498
if (!OkHttpResponse) {
499499
OkHttpResponse = com.nativescript.https.OkHttpResponse;
500500
}
@@ -538,10 +538,10 @@ export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsReque
538538
};
539539
}
540540

541-
export function request(opts: Https.HttpsRequestOptions) {
541+
export function request(opts: Https.HttpsRequestOptions, useLegacy: boolean = true) {
542542
return new Promise((resolve, reject) => {
543543
try {
544-
createRequest(opts).run(resolve, reject);
544+
createRequest(opts, useLegacy).run(resolve, reject);
545545
} catch (error) {
546546
reject(error);
547547
}

src/https.common.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ export interface HttpsRequestOptions extends HttpRequestOptions {
5252
onProgress?: (current: number, total: number) => void;
5353

5454
cachePolicy?: CachePolicy;
55-
useLegacy?: boolean;
5655
}
5756

5857
export interface HttpsResponse<T = any> {
@@ -71,14 +70,14 @@ export interface HttpsRequest {
7170
run(success, failure);
7271
}
7372

74-
export interface HttpsResponseLegacy {
73+
export interface HttpsResponseLegacy<T = any> {
7574
toArrayBuffer(): ArrayBuffer;
7675
toArrayBufferAsync(): Promise<ArrayBuffer>;
7776

7877
toString(): string;
7978
toStringAsync(): Promise<string>;
80-
toJSON(): any;
81-
toJSONAsync(): Promise<any>;
79+
toJSON(): T;
80+
toJSONAsync(): Promise<T>;
8281
toImage(): Promise<ImageSource>;
8382
// toImageAsync(): Promise<ImageSource>;
8483
toFile(destinationFilePath: string): Promise<File>;

src/https.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ export function enableSSLPinning(options: Https.HttpsSSLPinningOptions);
44

55
export function disableSSLPinning();
66

7-
export function request<T = any>(options: Https.HttpsRequestOptions): Promise<Https.HttpsResponse<T>>;
7+
export function request<U extends boolean, T = any>(options: Https.HttpsRequestOptions, useLegacy?: U): U extends true ? Promise<Https.HttpsResponseLegacy<T>> : Promise<Https.HttpsResponse<T>>;
88
export function setCache(options?: Https.CacheOptions);
99
export function clearCache();
1010
export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsRequest;

src/https.ios.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,7 @@ export function cancelRequest(tag: string) {
306306
}
307307
}
308308

309-
export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsRequest {
309+
export function createRequest(opts: Https.HttpsRequestOptions, useLegacy: boolean = true): Https.HttpsRequest {
310310
const type = opts.headers && opts.headers['Content-Type'] ? (opts.headers['Content-Type'] as string) : 'application/json';
311311
if (type.startsWith('application/json')) {
312312
manager.requestSerializer = AFJSONRequestSerializer.serializer();
@@ -356,12 +356,10 @@ export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsReque
356356

357357
manager.requestSerializer.timeoutInterval = opts.timeout ? opts.timeout : 10;
358358

359-
const useLegacy = Utils.isDefined(opts.useLegacy) ? opts.useLegacy : false;
360-
361359
const progress = opts.onProgress
362360
? (progress: NSProgress) => {
363-
opts.onProgress(progress.completedUnitCount, progress.totalUnitCount);
364-
}
361+
opts.onProgress(progress.completedUnitCount, progress.totalUnitCount);
362+
}
365363
: null;
366364
let task: NSURLSessionDataTask;
367365
const tag = opts.tag;
@@ -473,10 +471,10 @@ export function createRequest(opts: Https.HttpsRequestOptions): Https.HttpsReque
473471
},
474472
};
475473
}
476-
export function request(opts: Https.HttpsRequestOptions) {
474+
export function request(opts: Https.HttpsRequestOptions, useLegacy: boolean = true) {
477475
return new Promise((resolve, reject) => {
478476
try {
479-
createRequest(opts).run(resolve, reject);
477+
createRequest(opts, useLegacy).run(resolve, reject);
480478
} catch (error) {
481479
reject(error);
482480
}

0 commit comments

Comments
 (0)