如何将postman api连接到angular4

时间:2018-01-30 09:12:55

标签: angular postman angular-http

app.component.ts:

import { Component } from '@angular/core';
import { Http, Response } from '@angular/http';
import 'rxjs/add/operator/map';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'app will work!!';
  private apiUrl = 'https://address-book-demo.herokuapp.com/api/contacts';
  data: any = {};
  constructor(private http: Http){
  console.log('hellooooooo');
  this.getContacts();
  this.getData();
  }

  getData(){
  return this.http.get(this.apiUrl)
  	.map((res: Response) => res.json())
  }
  getContacts(){
  	this.getData().subscribe(data => {
  		console.log(data);
  		this.data = data;
  	})
  }
}

我正在尝试点击上面的apiurl并在我的console中获取数据。它工作正常。 但是,当我将网址更改为“https://www.getpostman.com/collections/010e61af1 .......”时,我无法点击它。 (这是交叉问题)。

有一次,我安装了CORS插件,它运行正常。

如果没有CORS插件,我该怎么做呢。

我和postman api合作很新。

1 个答案:

答案 0 :(得分:0)

您需要为响应标头添加CORS属性

res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS');
res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, Content-Length, X-Requested-With');

在nodejs上执行此操作的最简单方法如下:

var cors = require('cors'); app.use(cors());

请查看OAuth 2.0 Token Revocation了解详情