angular5 httpclient的示例实战


Posted in Javascript onMarch 12, 2018

从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);
 }
}

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

Javascript 相关文章推荐
javascript void(0)的妙用
Oct 21 Javascript
JavaScript中统计Textarea字数并提示还能输入的字符
Jun 10 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
Sep 10 Javascript
基于Javascript实现二级联动菜单效果
Mar 04 Javascript
详解JavaScript表单验证(E-mail 验证)
Mar 31 Javascript
Highcharts入门之简介
Aug 02 Javascript
浅析Angular2子模块以及异步加载
Apr 24 Javascript
详解使用angular-cli发布i18n多国语言Angular应用
May 20 Javascript
详解Angular2 之 结构型指令
Jun 21 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
Sep 18 Javascript
vue源码中的检测方法的实现
Sep 26 Javascript
js实现删除json中指定的元素
Sep 22 Javascript
vue 简单自动补全的输入框的示例
Mar 12 #Javascript
webpack打包js的方法
Mar 12 #Javascript
AngularJS对动态增加的DOM实现ng-keyup事件示例
Mar 12 #Javascript
vue路由懒加载的实现方法
Mar 12 #Javascript
vue移动UI框架滑动加载数据的方法
Mar 12 #Javascript
详解vuex的简单使用
Mar 12 #Javascript
js提取中文拼音首字母的封装工具类
Mar 12 #Javascript
You might like
PHP工厂模式简单实现方法示例
2018/05/23 PHP
Laravel 5.5 实现禁用用户注册示例
2019/10/24 PHP
javascript基本语法分析说明
2008/06/15 Javascript
javascript jQuery $.post $.ajax用法
2008/07/09 Javascript
jQuery 全选效果实现代码
2009/03/23 Javascript
JS无限树状列表实现代码
2011/01/11 Javascript
浅谈Javascript面向对象编程
2011/11/15 Javascript
用Jquery重写windows.alert方法实现思路
2013/04/03 Javascript
基于KMP算法JavaScript的实现方法分析
2013/05/03 Javascript
js 时间函数应用加、减、比较、格式转换的示例代码
2013/08/23 Javascript
使用ImageMagick进行图片缩放、合成与裁剪(js+python)
2013/09/16 Javascript
调用innerHTML之后onclick失效问题的解决方法
2014/01/28 Javascript
JS实现很酷的水波文字特效实例
2015/02/26 Javascript
通过BootStrap实现轮播图的实际应用
2016/09/26 Javascript
基于nodejs+express4.X实现文件下载的实例代码
2017/07/13 NodeJs
Node.js  事件循环详解及实例
2017/08/06 Javascript
vue组件父子间通信之综合练习(聊天室)
2017/11/07 Javascript
IntelliJ IDEA 安装vue开发插件的方法
2017/11/21 Javascript
jQuery EasyUI window窗口使用实例代码
2017/12/25 jQuery
深入浅析AngularJs模版与v-bind
2018/07/06 Javascript
JS中通过url动态获取图片大小的方法小结(两种方法)
2018/10/31 Javascript
浅谈Vue数据响应
2018/11/05 Javascript
jquery实现Ajax请求的几种常见方式总结
2019/05/28 jQuery
vue3使用vue-count-to组件的实现
2020/12/25 Vue.js
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
2018/04/26 Python
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
keras模型可视化,层可视化及kernel可视化实例
2020/01/24 Python
销售员自我评价怎么写
2013/09/19 职场文书
法律专业自我鉴定
2013/10/03 职场文书
《数星星的孩子》教学反思
2014/04/11 职场文书
2014教师“四风问题”对照检查材料思想汇报
2014/09/16 职场文书
党的群众路线个人对照检查材料
2014/09/23 职场文书
党员批评与自我批评材料
2014/10/14 职场文书
推荐信范文大全
2015/03/27 职场文书
搞笑婚庆主持词
2015/06/29 职场文书
Python实战之OpenCV实现猫脸检测
2021/06/26 Python