欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

angular5 httpclient的示例实战

程序员文章站 2023-11-01 17:12:46
从angular 4.3.0 以后的版本开始使用httpclient,替换了之前的http,引用的包路径已经变为了angular/common/http了 一个基础的...

从angular 4.3.0 以后的版本开始使用httpclient,替换了之前的http,引用的包路径已经变为了angular/common/http了

一个基础的 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, url, options);
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。