一、 get 请求数据
Angular5.x 以后 get、post 和和服务器交互使用的是 HttpClientModule 模块。
1、在 app.module.ts 中引入 HttpClientModule 并注入
import {HttpClientModule} from '@angular/common/http';
imports: [ BrowserModule, HttpClientModule ]
2、在用到的地方引入 HttpClient 并在构造函数声明
import {HttpClient} from "@angular/common/http";
//构造函数声明
constructor(public http:HttpClient) { }
3、具体get 请求
var api = "http://192.168.2X.xxx:8080/getproductlist";
this.http.get(api).subscribe(response => {
console.log(response);
});
二、post 提交数据
Angular5.x 以后 get、post 和和服务器交互使用的是 HttpClientModule 模块。
1、在 app.module.ts 中引入 HttpClientModule 并注入
import {HttpClientModule} from '@angular/common/http';
imports: [ BrowserModule, HttpClientModule ]
2、在用到的地方引入 HttpClient、HttpHeaders 并在构造函数声明 HttpClient
import {HttpClient,HttpHeaders} from "@angular/common/http";
constructor(public http:HttpClient) { }
3、post 提交数据
//手动设置请求头类型
const httpOptions={
headers:newHttpHeaders({'Content-Type':'application/json'}) };
var api="http://192.168.2X.xxx:8080/Login";
this.http.post(api,
{username:'张三',
password:1111
},httpOptions).subscribe(response=>{
console.log(response);
});
三、Jsonp 请求数据
1、在 app.module.ts 中引入 HttpClientModule、HttpClientJsonpModule 并注入
import {HttpClientModule,HttpClientJsonpModule} from '@angular/common/http';
imports: [ BrowserModule, HttpClientModule, HttpClientJsonpModule ]
2、在用到的地方引入 HttpClient 并在构造函数声明
import {HttpClient} from "@angular/common/http";
constructor(public http:HttpClient) { }
3、jsonp 请求数据
//jsonp请求 服务器必须得支持jsonp
/*
http://192.168.2X.xxx:8080/productlist?callback=xxx
http://192.168.2X.xxx:8080/productlist?cb=xxx
*/
var api = "http://192.168.2X.xxx:8080/productlist";
//this.http.jsonp(api,'cb').subscribe(response => {
this.http.jsonp(api,'callback').subscribe(response => {
console.log(response);
});
四、Angular 中使用第三方模块 axios 请求数据
1、安装 axios
npm install axios--save
2、用到的地方引入 axios
import axios from 'axios';
3、具体使用(可参考axios文档)
//get请求
var api = "http://192.168.2X.xxx:8080/getproductlist";
axios.get(api) .then(function(response){
//handlesuccess
console.log(response);
resolve(response)
}) .catch(function(error){
//handle error
console.log(error);
});
//post请求
var api = "http://192.168.2X.xxx:8080/login";
axios.post(api,
{
userName: 'Fred',
passwoprd: '1111'
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});