我需要使用Ajax请求检查我的Apache Web服务器的htdocs文件夹中是否存在特定文件。我是Ajax的新手。如果我的方法是对的,请告诉我。
我在Javascript中编写以下函数来执行上述操作。
我考虑过的网址是:“http://film.ts”。
function checkURL(url){
var Ajaxhttp;
if (window.XMLHttpRequest){
Ajaxhttp=new XMLHttpRequest();
}
else{// code for IE6, IE5
Ajaxhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
Ajaxhttp.open("HEAD",url,true);
Ajaxhttp.onreadystatechange=function(){
if (Ajaxhttp.readyState==4 && Ajaxhttp.status == 200){
data.playoutInfo._playoutUrls[0] = url;
}
else if(Ajaxhttp.status == 404){
data.playoutInfo._playoutUrls[0] = "http://San_Diego_Clip.ts";
}
}
Ajaxhttp.send();
}
使用上面的代码,即使文件不存在,我的状态也是200。如果我能通过其他方式实现这一点,请建议我。
答案 0 :(得分:0)
您应该使用Ajaxhttp.open("GET",url,true);
发出GET请求。检查xhr.open
的api
https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest
它的
void open(
DOMString method,
DOMString url,
optional boolean async,
optional DOMString user,
optional DOMString password
);
所以,HEAD
请求一直有200个。
答案 1 :(得分:0)
在你的htdocs文件夹中创建三个[3]文件1)searchFile.php 2)ajaxreq.php,创建一个文件调用它IamAfile.txt。
=在searchFile.php =中 ========写下这个:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Looking For A File</title>
</head>
<body>
<div class="repoter">Content for class "repoter" Goes Here</div>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript" >
$(document).ready(function() {
$.post("ajaxreq.php",
{
anyFile:"IamAfile.txt"
},
function(data,status){
$(".repoter").html( data );
}
)
});
</body>
</html>
==结束 searchFile.php ==
现在
==在ajaxreq.php ==里面 ========写下这个:
<?php
if (isset($_POST['anyFile'])) {
$anyFile=$_POST['anyFile'];//your in need file
$ineedFile=$anyFile;
if (file_exists($ineedFile)) {
//if the in need file is htdocs folder report this
$report="The file is here. Named : <a href='$ineedFile' >Open The File Here</a>" ;
}
else if (!file_exists($ineedFile)) {
//no such in need file report this
$report="No Such File In Mentioned Directory";
}
else{
$report="Sorry Dont Understand your request";
exit;
}
echo $report;
}
?>
=============================================== ====结束 ajaxreq.php =============
测试请求
如果在htdocs中创建了所有文件,请将此/searchFile.php粘贴到浏览器中,然后按Enter键。这是我将如何使用Jquery Ajax