Apache CORS OPTIONS 请求状态 501 错误
Posted
技术标签:
【中文标题】Apache CORS OPTIONS 请求状态 501 错误【英文标题】:Apache CORS OPTIONS request status 501 error 【发布时间】:2018-02-11 12:29:49 【问题描述】:Angular 2 http post 未设置内容类型
我试图在 http.post 上设置标题但没有运气。
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 pre-flight OPTIONS request。尝试将 OPTIONS 添加到允许的方法列表中。 谢谢 我试过了,没用。 enable cors in .htaccess的可能重复 【参考方案1】:尝试使用headers.append()
let headers = new Headers();
headers.append('Accept', 'application/json');
headers.append('Content-Type', 'application/json');
【讨论】:
您是否遇到任何错误?你在 teamviewer 中有空吗??以上是关于Apache CORS OPTIONS 请求状态 501 错误的主要内容,如果未能解决你的问题,请参考以下文章
Apache 如何以及为啥拦截对 Rails 的一些 CORS 请求?
CORS:在成功的 OPTIONS 请求后,Firefox 不发送 POST 请求......适用于 Chrome 和 IE
HTTP OPTIONS 飞行前请求加载已取消,Chrome 中处于待处理状态
如何配置 Apache 让 PHP 处理 OPTIONS HTTP 请求? [关闭]