php - CORS 策略:没有来自同一服务器的“访问控制允许来源”
问题描述
我对 CORS 政策有疑问。尝试访问 ajax 代码的同一服务器中的 php 文件,但出现 CORS 错误。
await $.ajax({
url: '/includes/paystripe.php',
type: 'POST',
crossDomain: true,
data: {api_key_stripe: api_key_stripe, customer_id:customer_id},
success: function(data){
}
});
错误:
Access to XMLHttpRequest at 'https://www.subDomain.domain.com/includes/paystripe.php' (redirected from 'https://subDomain.domain.com/includes/paystripe.php') from origin 'https://subDomain.domain.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
如果我在本地主机上工作,就没有这个问题,服务器配置可能有问题吗?
编辑:如果我将标题放在 paystripe.php 上,则会出现 500 错误(仅在服务器上,不在本地主机上):
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE');
解决方案
推荐阅读
- javascript - 更改 @Input 组件对象不会反映在父组件中
- python - Python 多处理队列管理器地址已在使用中
- katalon-studio - Katalon - 在隐身模式下录制
- android - Android:相同的型号,其中一部手机正在从 Play 商店获取更新的应用程序,但另一部手机没有获取更新的应用程序
- swift - 使用 Cocoapods 安装 swift 库
- mysql - Docker Compose Sql DB 镜像连接错误
- javascript - 如何以编程方式取消 AlertIOS
- firebase - 如何限制用户根据 Firebase 规则中的电话号码读取/写入数据
- javascript - Content-Range 在 Safari 中工作,但在 Chrome 中不工作
- javascript - 日期比较格式