angular使用Http和HttpClient设置查询参数的区别
2017-11-11 14:12
453 查看
由于Angular的版本更新,里面Http将逐渐被HttpClient替代,所以Http中的一些方法在HttpClient中是无法使用的,这里就遇到一个设置查询字符串之间的差别
使用Http方法设置查询字符串
使用HttpClient方法设置查询字符串
这里导入包和实例HttpClient的区别我们在此不做讨论,照着文档里的操作就可以完成,主要看release()方法区别的解决方法我们需要看看post方法的源码
如果大家有更好的解决方法欢迎留言
使用Http方法设置查询字符串
import { RequestOptions, Headers, Http } from '@angular/http'; constructor(http: Http) {}; release() { let headers=new Headers({ 'Content-Type': 'application/x-www-form-urlencoded' }); //第一处区别 let options=new RequestOptions({ headers: headers }); //第二处区别 let params=newURLSearchParams(); params.append("orderId",this.orderId); params.append("message", this.message); params.append("grade", this.star); for(leti=0; i<this.imgs.length; i++) { params.append("url[]", this.imgs[i]); } letbody=params.toString(); console.log(body); this.http.post('http://api.xxxxxx.bpiao.com/ERP-Web/ceshi/order/xxxxxx', body, options).subscribe(data => { console.log(data); this.location.back(); }) }
使用HttpClient方法设置查询字符串
import { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http'; constructor(http: HttpClient) {}; release() { let headers=new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' }); // 第一处区别 let options= {headers: headers}; //第二处区别 let params=newURLSearchParams(); params.append("orderId",this.orderId); params.append("message", this.message); params.append("grade", this.star); for(leti=0; i<this.imgs.length; i++) { params.append("url[]", this.imgs[i]); } let body=params.toString(); console.log(body); this.http.post('http://api.xxxxxx.bpiao.com/ERP-Web/ceshi/order/xxxxx', body, options).subscribe(data => { console.log(data); this.location.back(); }) }
这里导入包和实例HttpClient的区别我们在此不做讨论,照着文档里的操作就可以完成,主要看release()方法区别的解决方法我们需要看看post方法的源码
post(url: string, body: any | null, options?: { headers?: HttpHeaders; //这里方法便是解决所有区别的关键 observe?: 'body'; params?: HttpParams; reportProgress?: boolean; responseType?: 'json'; withCredentials?: boolean; }): Observable<Object>;
如果大家有更好的解决方法欢迎留言
相关文章推荐
- httpclient使用参数设置
- 使用ADF-BC 实现查询功能之四:通过代码动态设置Where条件参数
- 使用ADF-BC 实现查询功能之八:通过代码动态设置Criteria条件参数
- android使用AsyncHttpClient上传图片以及参数到服务器
- AFNetWork 使用时 ,http中查询参数问题
- HttpClient和HttpURLConnection的使用和区别(上)
- HttpClient使用Post和Get提交参数
- Java HttpClient中的三种超时设置区别
- Java:HttpClient篇,HttpClient4.2在Java中的几则应用:Get、Post参数、Session(会话)保持、Proxy(代理服务器)设置,多线程设置...
- 在 IIS 6 和 IIS 7中配置Https,设置WCF同时支持HTTP和HTPPS,以及使用HttpWebRequest和HttpClient调用HttpS
- Android中HttpURLConnection与HttpClient的使用与区别
- 测试工具Loadrunner日志参数的设置与使用 --http://epan-chen.javaeye.com/blog/317594
- 使用httpClient MultipartRequestEntity文件上传解析文件和普通表单参数
- Model model,HttpServletRequest request, ModelMap map参数使用与区别
- HttpClient使用Post和Get提交参数 中文乱码处理
- HttpClient 超时相关参数设置
- 黑马程序员---XMLHttpRequest 对象open参数中使用post与get区别
- httpclient使用post提交json参数
- Android使用HttpURLConnect、HttpClient访问WebService查询手机号码归属地
- HttpClient 4.1.3 初学篇---使用Get和Post模拟登录简单页面(分别带参数)