我有以下代码:
$.ajax({
type: 'POST',
url: 'mylink.com/coupon2.php',
crossDomain: true,
data: '{"some":"json"}',
dataType: 'json',
success: function(responseData, textStatus, jqXHR) {
//$( "#coupon_code" ).html("Coupon code: " + responseData.data.code);
//var value = responseData;
//var json = JSON.parse(responseData);
$( "#coupon_code" ).html("Coupon code: " + responseData.data);
},
error: function (responseData, textStatus, errorThrown) {
$( "#coupon_code" ).html( 'POST failed. ' + errorThrown + ', ' + responseData );
}
});
它可以在Windows上的Chrome和Firefox上正常运行,但不能在OS X上的Chrome中发布或随后返回。为什么会这样?
最佳答案
该问题与浏览器或操作系统无关,它与尝试从安全连接向不安全连接发出跨源请求严格相关。在Windows PC上测试代码时,我没有通过https连接到初始站点。但是,当我在Mac上对其进行测试时,我通过https连接到初始站点,并尝试发布到非https网址。这就是为什么帖子在PC上起作用,然后在Mac上失败的原因。