【发布时间】:2018-01-19 12:41:28
【问题描述】:
我在 Angular 5 中有 RXJS Http get 方法来使用来自 ASP.Net Web 2 的服务。在调用使用这些服务之前,我已经获得了从 Azure B2C 收到的身份验证令牌。
我的问题是我如何包装这个 RXJS 服务方法以将令牌与 Web API 请求一起传递。
服务
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/map';
import{ IMessageA } from '../../../Interfaces/UnitTest/TestMessageA';
@Injectable()
export class ServerFlowTestService{
private developmentBaseUrl: string = 'https://localhost:44370/';
constructor(private http: Http){}
public getMessageFromWebAPI_T1():Observable<IMessageA[]>
{
return this.http.get(this.developmentBaseUrl+ '/app/analysis/GetMessage')
.map((response:Response)=> <IMessageA[]>response.json())
}
}
可观察组件
unitTestA: IMessageA[];
constructor(private authSandbox: AuthenticationSandbox, private unitTestingService: ServerFlowTestService
) {
this.token = authSandbox.getToken();
this.unitTest1 = unitTestingService.getServerFlowTest1();
this.unitTestingService.getMessageFromWebAPI_T1()
.subscribe((messageA_Data) => this.unitTestA = messageA_Data);
}
【问题讨论】:
标签: angular asp.net-web-api2 rxjs restful-authentication