我一直在调整这个脚本一段时间,正如我在问题中提到的,我的代码在非异步模式下工作得很好,而当我更改async:true
时,代码就失败了。
这是我的代码。
$.ajax({
type : "POST",
url : "http://someotherserver.com/sendmail.php",
data: { resp: data },
async: false
})
.done(function( msg )
{
alert(msg); // Works when async:false
})
.fail(function(jqXHR, textStatus)
{
if(textStatus == 'timeout')
{
alert('Failed from timeout');
}
});
sendmail.php
中没有任何内容位于我朋友的服务器上,CORS
启用了{。}}。
sendmail.php
<?php
file_put_contents('request.txt',json_encode($_REQUEST));
echo "filecreated";
问题是当我更改async : true
时,永远不会在该服务器上创建request.txt文件,而如果我更改async : false
则会按预期工作。
问题是我希望此请求是异步,而不是同步。
有人可以对此有任何想法吗?如果需要更多信息,我将随时准备提供。