Angular2 Http POST请求错误

时间:2017-07-12 20:08:54

标签: angular

我已经为登录服务编写了代码。 Http post请求抛出“服务器错误”。服务器API工作正常,使用Postman验证它。以下是客户端身份验证(登录)服务脚本。请在我出错的地方帮助我。

authentication.service.ts

import { Injectable } from '@angular/core';
import { Http, Headers, Response, RequestOptions } from '@angular/http';
import { Observable } from 'rxjs/Observable';

import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';

@Injectable()
export class AuthenticateService {

    constructor(private http: Http) { }

    login(username: string, password: string) {
        var url = 'http://localhost/project/api/authenticate';
        var data = JSON.stringify({ username: username, password: password});

        let headers = new Headers({ 'Content-Type': 'application/json' });
        let options = new RequestOptions({ headers: headers});

        return this.http.post(url, data, options)
            .map((response:Response) => {
                // some code
            })
            .catch((error:any) => Observable.throw(error.json().error || 'Server error'));
    }
}

1 个答案:

答案 0 :(得分:0)

我为我的问题找到了解决方案。包含在客户端和服务器端脚本的代码下面。

<强>客户端:

headers.append("Accept", "application/json");

服务器代码:

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Headers: Access-Control-Allow-Headers');