npm i --save @testjg/nativescript-http
- Version: 1.1.1
- GitHub: https://github.com/TestJG/mtmobile-plugins
- NPM: https://www.npmjs.com/package/%40testjg%2Fnativescript-http
- Downloads:
- Last Day: 0
- Last Week: 0
- Last Month: 0
@testjg/nativescript-http
Http helper lib. Under the hood it uses okhttp
(v3) for Android and NSURLSession
for iOS.
Has peer dependencies on url-join and rxjs.
Installation
ns plugin add @testjg/nativescript-http
Usage
import { createHttp, forRelativeUrl } from '@testjg/nativescript-http';
import { firstValueFrom } from 'rxjs';
import { catchError, switchMap } from 'rxjs/operators';
export class TodosService {
http = createHttp('https://jsonplaceholder.typicode.com');
todos = forRelativeUrl('todos', this.http);
fetchTodo(id: number) {
const json$ = this.todos
.request({
method: 'GET',
url: `${id}`,
headers: { 'Accept-Language': ['ca', 'en'] },
})
.pipe(
switchMap((res) => res.json()),
catchError((error) => null)
);
return firstValueFrom(json$);
}
}
Pro tip: Use functions like jsonBody
or multiPartBody
to create the appropiate request content.
License
Apache License Version 2.0