0

perl を ajax で実行できません。responseText が常に perl コード全体を返すのはなぜですか?

次の例は、perl からデータを取得することです。関数 updateTime から得られる応答は、perl コード全体です。

ところで: コマンド「c:/perl/bin/perl test.cgi」を使用して、cmd ウィンドウで perl コードを実行できます。

JS コードは次のとおりです。

function updateTime(){

 var xmlhttp_t = createXMLHTTPRequest();
 xmlhttp_t.open("GET","cgi-bin/test.cgi",false);
 xmlhttp_t.send();
 if(xmlhttp_t.readyState == 4){
   return xmlhttp_t.responseText;
 }
}

//
//Get XMLHttpRequest
//
function createXMLHTTPRequest(){
var xhr_object = null;
if(window.XMLHttpRequest)
{
    xhr_object = new XMLHttpRequest();
}
else if(window.ActiveXOject)
{
    xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
}
else
{
    alert("Your browser doesn't provide XMLHttpRequest functionality");
    return;
}
return xhr_object;
}

Perl コードは次のとおりです。

#!c:/perl/bin/perl

use strict;
use CGI;
use warnings;

my $cgi = new CGI();
print $cgi->header('text/html; charset=UTF-8');

print "aaaa";
4

1 に答える 1

3

関数updateTimeから得られる応答は、perlコード全体です。

次に、それはサーバー構成の問題です。

Apacheのドキュメント

于 2013-02-19T06:38:37.247 に答える