Angular2

时间:2016-09-25 06:48:44

标签: angular

我正在尝试将我的jQuery代码转换为Angular2。 jQuery代码运行良好,但Angular2代码提供了与API不同的输出。

我已经检查了params&端点使用firebug / console&那些是一样的。有人可以提出一些建议吗?

jQuery代码:

$.post(endpoint, { email_login: username, password_login: password }, function(data) {
  console.log(data)
})

Angular 2代码:

    let url = this.endpoint;
    let body = JSON.stringify({email_login: username, password_login: password});
    let headers = new Headers({ 'Content-Type': 'application/json' });
    let options = new RequestOptions({ headers: headers });

    return this.http.post(url, body, options)
    .toPromise()
    .then(response => response.json() as any)

1 个答案:

答案 0 :(得分:0)

    let url = this.endpoint;
    let body = JSON.stringify({email_login: username, password_login:password});
    let headers = new Headers({ 'Content-Type': 'application/json' });
    let options = new RequestOptions({ headers: headers }); 

 return this.http.post(url, body, options)
        .toPromise()
        .then(this.handleData)
        .catch(this.handleError);

您可以在handleData和错误响应handleError

中处理服务器成功响应
handleData(res: any) {
    let body = res.json();
    console.log(body);
    return body || { };
}

handleError(error: any) {
    let body = error.json();
    console.log(body);
    return Promise.reject(error);
}