我已经为登录服务编写了代码。 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'));
}
}
答案 0 :(得分:0)
我为我的问题找到了解决方案。包含在客户端和服务器端脚本的代码下面。
<强>客户端:强>
headers.append("Accept", "application/json");
服务器代码:
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Headers: Access-Control-Allow-Headers');