加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angular 5 httpclient

发布时间:2020-12-17 08:30:17 所属栏目:安全 来源:网络整理
导读:一个基础的 httpclient 样例 import { Injectable } from '@angular/core';import { HttpClient,HttpResponse } from '@angular/common/http';import { Observable } from 'rxjs/Observable';import { HttpDefaultOptions } from './http.default.options';@

一个基础的 httpclient 样例

import { Injectable } from '@angular/core';
import { HttpClient,HttpResponse } from '@angular/common/http';
import { Observable } from 'rxjs/Observable';
import { HttpDefaultOptions } from './http.default.options';

@Injectable()
export class Service {

  private static METHOD_DELTE = 'DELETE';
  private static METHOD_POST = 'POST';
  private static METHOD_GET = 'GET';
  private static METHOD_PUT = 'PUT';

  constructor(private httpClient: HttpClient) {
  }

  /**
   * 将数据上传
   * @param data
   * @param {Function} func
   */
  uploadDataPost(data: any,func: Function) {
    let url = '/api/test';
    this.apiPost(url,data)
      .subscribe((response: HttpResponse) => {
        func(response);
      },error => {
        func(undefined);
      });
  }

  /**
   * 返回json 格式的obj 对象
   * @param url
   * @param body
   * @param urlSearchParams
   * @returns {Observable<{}>}
   */
  apiPost(url,body,urlSearchParams?: any): Observable<{}> {
    let options = {
      body: body ? body : null,params: urlSearchParams,responseType: 'json'
    };
    return this.httpClient.request(Service.METHOD_POST,url,options);
  }

  /**
   * 返回一个obj 对象
   * @param url
   * @param urlSearchParams url 的查询参数
   * @returns {Observable<{}>}
   */
  apiGet(url,urlSearchParams?: any): Observable<{}> {
    let options = {
      params: urlSearchParams,responseType: 'json'
    };
    return this.httpClient.request(Service.METHOD_GET,options);
  }

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读