File

src/app/services/http.service.ts

Index

Properties
Methods

Constructor

constructor(http: HttpClient, logger: NGXLogger, router: Router)
Parameters :
Name Type Optional
http HttpClient No
logger NGXLogger No
router Router No

Methods

tedData
tedData(url: string, data: any)
Parameters :
Name Type Optional
url string No
data any No
Returns : Observable<HttpResponse<any>>

Properties

Public http
Type : HttpClient
Public logger
Type : NGXLogger
Public router
Type : Router
import {
  HttpClient,
  HttpErrorResponse,
  HttpResponse,
} from "@angular/common/http";
import { Injectable } from "@angular/core";
import { Router } from "@angular/router";
import { NGXLogger } from "ngx-logger";
import { Observable, of, Subject, throwError } from "rxjs";
import { catchError, map, retry } from "rxjs/operators";
import { HEADER_OPTIONS } from "../../core/config";
// import { EnvironmentService } from "src/core/environment.service";
@Injectable({
  providedIn: 'root'
})
export class HttpService {

  constructor(
    public http: HttpClient,
    public logger: NGXLogger,
    // public env: EnvironmentService,
    public router: Router
  ) { }

  tedData(url: string, data: any): Observable<HttpResponse<any>> {
    const body = JSON.stringify(data);

    return this.http
      .post(url, body, {
        headers: HEADER_OPTIONS,
        observe: "response",
      })
      .pipe(
        map((res) => {
          console.log(res);
          const response = JSON.parse(JSON.stringify(res.body)).response;
          // console.log('postdata =>', response)
          res = res.clone({
            // body: responseDecode(response || '', this.env.environment.config.exchange_key)
            body: response,
          });

          return res;
        }),
        // catchError((error) => {
        //   let errorMessage;
        //   switch (error.status) {
        //     case 201:
        //       errorMessage = responseDecode(
        //         error?.error?.response,
        //         this.env.environment.config.exchange_key
        //       );
        //       break;
        //     case 200:
        //       errorMessage = responseDecode(
        //         error?.error?.response,
        //         this.env.environment.config.exchange_key
        //       );
        //       break;
        //     case 400:
        //       errorMessage = responseDecode(
        //         error?.error?.response,
        //         this.env.environment.config.exchange_key
        //       );
        //       break;
        //     case 422:
        //       errorMessage = responseDecode(
        //         error?.error?.response,
        //         this.env.environment.config.exchange_key
        //       );
        //       break;
        //     case 401:
        //       errorMessage = { message: "Votre session a expiré" };

        //       // document.location.href = '#/public/sign-in/?sessionExpired=true'
        //       this.router.navigate(["/public/sign-in"], {
        //         queryParams: { sessionExpired: true },
        //       });
        //       break;
        //     case 403:
        //       this.router.navigate(["/public/403"]);
        //       break;
        //     default:
        //       errorMessage = { message: error.statusText };
        //       break;
        //   }
        //   return throwError({
        //     status: error.status,
        //     ok: error.ok,
        //     statusText: error.statusText,
        //     error: errorMessage,
        //   });
        // })
      );
  }
}

results matching ""

    No results matching ""