Angular2响应未映射到TypeScript对象

时间:2018-01-12 03:01:25

标签: asp.net angular typescript asp.net-web-api

我正在努力弄清楚为什么我从API获得的响应没有映射到我在打字稿中的对象。

以下是我的服务中调用API的函数:

register(user: IUser): Observable<IUser> {
    var headers = new Headers();
    headers.append('Content-Type', 'application/json');

    var options = new RequestOptions({
        headers: headers,
        url: this._registerUrl,
        body: JSON.stringify(user)
    });

    return this._http.post(this._registerUrl, { user }, options)
        .map((res: Response) => res.json() as IUser)
        .catch(this.handleError);
}

这是调用服务的函数:

register(): void {
    let user: IUser = {
        email: this.email,
        username: this.username,
        password: this.password
    }

    this._userService.register(user)
        .subscribe(result => {
            debugger;
            if(result.errorCode > 0)
                this.handleError(result.errorCode);
            else {
                localStorage.setItem('userId', result.userId.toString());
                localStorage.setItem('username', result.username.toString());
                localStorage.setItem('email', result.email.toString());
            }
        });
}

我从API返回的对象与我前端的对象匹配。它正在返回数据,我可以在我的回复中看到它。所有数据都是正确的,但它在正文中并没有将其转换为IUser对象。

有人有什么想法吗?感谢。

修改

这是响应对象从服务返回时的样子。

enter image description here

0 个答案:

没有答案