Ajax 取消.php脚本的请求
Ajax request for .php script being cancelled
我正在尝试通过jquery中的ajax调用运行脚本;但是,我没有得到任何结果,并且在chrome的网络视图中看到"(已取消)"状态。这仅在我请求.php
脚本时发生,但例如,如果我只请求一个.txt
文件,则可以正常工作;当我在下面的文件中将网址更改为"test.txt"时,我会收到one'ntwo'nthree
test.html
警报。我的网络服务器配置正确,文件的权限都合适。如果我从浏览器请求我的.php
脚本,它会按预期返回"hello"。以下是我的三个文件,为什么我会收到取消的test.php
请求而不是test.txt
?
测试.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="shortcut icon" href="/favicon.ico">
<script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script>
<title>test</title>
</head>
<body>
<button id="b">click</button>
<script>
$("#b").bind("click", function() {
$.ajax({
url: "test.php", // test.txt works fine
type: "GET",
cache: false,
success: function(data) {
alert(data);
}
});
});
</script>
</body>
</html>
测试.txt
one
two
three
测试.php
<?php
echo "hello";
?>
如前所述,如果我使用浏览器请求test.php
,我会得到正确的"hello"输出,因此它执行正常。
-rwxr-xr-x 1 me me 22 Oct 1 02:49 test.php
(Canceled)
令人沮丧。如果您转到chrome://net-internals/#events
,您可以更详细地查看您的请求(canceled)
的原因。Chrome 屏蔽您的请求可能有多种原因,但您可以通过该网址详细了解您的请求。如果您仍然遇到问题,请编辑您的问题以包含此信息。
假设你使用的是WAMP或LAMP。
如果您的test.html
文件位于 Web 服务器的 www
目录之外,则 Web 服务器将阻止访问您的 test.php 文件,因为它违反了同源策略。这可以解释为什么在浏览器中访问 test.php 文件工作正常,以及为什么此测试.html的 test.php 文件请求失败。
这可能不是这么简单,但这也是偶尔让我感到的事情。特别是当我有一个索引时.html躺在桌面上。
相关文章:
- Javascript-如何让脚本与Ajax请求的数据一起运行
- 是否可以通过Chrome扩展内容脚本打开Chrome外部协议请求
- 如何使用java脚本或jquery发送跨域SOAP请求
- jQuery没有在ajax请求的脚本标记中加载js文件
- 如何在 Postman 中的预请求脚本中计算 md5 哈希
- [XSS]Expressjs 阻止从 POST 请求运行脚本
- 使用Java脚本跟踪网页中是否有Ajax请求,或者通过Selenium Web驱动程序拦截XMLHttpRequest
- 当我们打开ADF应用程序的同一网页的不同版本时,如何让浏览器请求java脚本
- 带有ajax xml请求的Node js脚本不起作用
- 异步HTTP(ajax)请求在脚本标记中有效,但在js文件中无效
- 如何从从内的