This.http.get 的 Angular2 问题
Angular2 issue with This.http.get
我开始玩 Angular 2 并为此设置了一个 ASP>NET WebApi 在 IIS 中本地托管在 http://localhost:8081/ping(调用 returns 序列化为 JSON 对象的字符串),效果非常好。
这是我的服务,
import { Injectable } from '@angular/core';
import { Headers, Http } from '@angular/http';
import 'rxjs/add/operator/toPromise';
@Injectable()
export class TempService {
constructor(
private http: Http
){}
ping(): Promise<string>{
return this.http.get('http://localhost:8081/ping')
.toPromise().then(res => res.json() as string)
.catch(this.handleError);
}
private handleError(error: any): Promise<any> {
alert(error);
return Promise.reject(error.message || error);
}
}
但是,当我尝试通过此函数进行此调用时,我在实际调用中得到了 200,但是我从 handleError 函数中收到以下错误
我已经尝试将 ASP.NET WebApi 实际部署到 Micrsoft Azure 站点,它的反应完全相同,而且我知道 api 正在工作,我只是不确定是什么我的服务有问题,这里的其他人有没有发生过这种情况,或者对问题的原因有任何想法?
Harry Ninh 是正确的,一旦我在我的 ASP.NET WebApi 中启用了 CORS,它就开始在所有浏览器中工作;至少我在上面的评论中提到的那些。感谢 Harry Ninh 的帮助。
我之前使用 XHRBackend 时遇到过同样的问题,问题得到解决。
在app.module.ts中我写了如下
从“@angular/http”导入 { HttpModule、Http、XHRBackend};
@NgModule({.
.
.
供应商:[
HttpModule、XHRBackend、..
],}
)
我开始玩 Angular 2 并为此设置了一个 ASP>NET WebApi 在 IIS 中本地托管在 http://localhost:8081/ping(调用 returns 序列化为 JSON 对象的字符串),效果非常好。
这是我的服务,
import { Injectable } from '@angular/core';
import { Headers, Http } from '@angular/http';
import 'rxjs/add/operator/toPromise';
@Injectable()
export class TempService {
constructor(
private http: Http
){}
ping(): Promise<string>{
return this.http.get('http://localhost:8081/ping')
.toPromise().then(res => res.json() as string)
.catch(this.handleError);
}
private handleError(error: any): Promise<any> {
alert(error);
return Promise.reject(error.message || error);
}
}
但是,当我尝试通过此函数进行此调用时,我在实际调用中得到了 200,但是我从 handleError 函数中收到以下错误
我已经尝试将 ASP.NET WebApi 实际部署到 Micrsoft Azure 站点,它的反应完全相同,而且我知道 api 正在工作,我只是不确定是什么我的服务有问题,这里的其他人有没有发生过这种情况,或者对问题的原因有任何想法?
Harry Ninh 是正确的,一旦我在我的 ASP.NET WebApi 中启用了 CORS,它就开始在所有浏览器中工作;至少我在上面的评论中提到的那些。感谢 Harry Ninh 的帮助。
我之前使用 XHRBackend 时遇到过同样的问题,问题得到解决。
在app.module.ts中我写了如下
从“@angular/http”导入 { HttpModule、Http、XHRBackend};
@NgModule({. . . 供应商:[ HttpModule、XHRBackend、..
],}
)