2016-07-15 163 views
1

我在角2中发出jsonp请求。当我单击错误消息的链接时收到响应,但是我无法将此响应输出到浏览器,出现错误:JSONP请求错误Angular 2

未捕获的响应与状态:200 OK的网址:https://www.statbureau.org/calculate-inflation-price-jsonp?jsoncallback&country=united-states&amount=102&start=1968%2F1%2F1&end=2016%2F1%2F1

import {Component} from '@angular/core'; 
import {NavController} from 'ionic-angular'; 
import {Jsonp, URLSearchParams } from '@angular/http'; 
import {JSONP_PROVIDERS} from '@angular/http'; 
@Component({ 
    templateUrl: 'build/pages/home/home.html', 
    providers: [JSONP_PROVIDERS] 
}) 
export class HomePage { 

    value: any; 
    constructor(private jsonp: Jsonp) { 
    this.jsonp=jsonp; 
     let cpiUrl = "https://www.statbureau.org/calculate-inflation-price-jsonp?jsoncallback" 
     let params = new URLSearchParams(); 
     params.set('country', 'united-states'); 
     params.set('amount', '102'); 
     params.set('start', '1968/1/1'); 
     params.set('end', '2016/1/1'); 
     params.set('format', 'true'); 
     // TODO: Add error handling 
     this.jsonp 
       .request(cpiUrl, { method: 'Get', search: params }).subscribe(res => { this.value = res.json(); 
       }) 

    } 


} 

回答

0
import {Component} from '@angular/core'; 
import {NavController} from 'ionic-angular'; 
import {URLSearchParams } from '@angular/http'; 
import {Http, HTTP_PROVIDERS} from '@angular/http'; 
@Component({ 
    templateUrl: 'build/pages/home/home.html', 
    providers: [HTTP_PROVIDERS] 
}) 
export class HomePage { 

    value: any; 
    constructor(private http: Http) { 
    this.http=http; 
     let cpiUrl = "https://www.statbureau.org/calculate-inflation-price-json?" 
     let params = new URLSearchParams(); 
     params.set('country', 'united-states'); 
     params.set('amount', '102'); 
     params.set('start', '1968/1/1'); 
     params.set('end', '2016/1/1'); 
     params.set('format', 'true'); 
     // TODO: Add error handling 
     http.get(cpiUrl, {search: params }).subscribe(res => { this.value = res.text(); 
       }) 

    } 


} 
+0

我不得不这样做是一个HTTP请求 – RSB