我使用Angular 5作为正面,而Slim 2作为背面使用。 Slim允许我完成我的GET请求,但它不允许我在POST请求中。
我在index.php文件中添加了CORS标头。但它不起作用。
header('Access-Control-Allow-Origin : *');
header('Access-Control-Allow-Headers : X-Requested-With, Content-Type, Accept, Origin, Authorization');
header('Access-Control-Allow-Methods : GET, POST, PUT, DELETE, OPTIONS');
如果有人知道解决方案,请提供帮助。
答案 0 :(得分:2)
当您请求索引页面时,您的代码将授予JS读取响应的权限。
然而,您的JS正在生成a preflight request(这将是OPTIONS而不是POST)。在服务器以权限响应之前,它不会发送POST请求。
您的服务器需要使用200 OK
响应和相应的Access-Control-Allow
源标头对其进行响应。但是,您的服务器当前正在抛出500 Internal Server Error
。
您需要查看服务器端代码并修复该错误,以便它正确响应OPTIONS请求。