Angular 2 http post没有设置内容类型
我试图在http.post上设置标题,但没有运气。Apache CORS OPTIONS请求状态501错误
import { Injectable } from '@angular/core';
import { Http, Headers, RequestOptions, Response } from '@angular/http';
import { User } from '../_models/index';
@Injectable()
export class UserService {
constructor(private http: Http) { }
create(username: string, firstname: string, lastname: string, email: string, password: string) {
let headers = new Headers({
'Accept' : 'application/json',
'Content-Type': 'application/json'
});
let options = new RequestOptions({ headers: headers, method: 'post' });
return this.http.post(
'http://127.0.0.1:8080/api/users/register',
JSON.stringify({username, firstname, lastname, email, password}),
options
// this.jwt()
).map(
(response: Response) => response.json()
);
}
我已经在我的Apache配置
<Directory /var/www/stockwatch_api>
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Content-Type"
Header set Access-Control-Allow-Methods "POST, PUT, DELETE, GET, HEAD"
设置头,我也在我的CakePHP API的应用程序设置相同的标题。
我得到这样的响应:
状态代码:501未执行
的问题是与后端。它拒绝[CORS飞行前OPTIONS请求](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Preflighted_requests)。尝试将OPTIONS添加到允许的方法列表中。 – georgeawg
谢谢,我试过了,没有工作。 – user5569354
[在.htaccess中启用cors的可能的重复](https://stackoverflow.com/questions/14467673/enable-cors-in-htaccess) – georgeawg