我有一個簡單的perl子例程,用於檢查是否仍在託管jQuery 1.6的副本,然後決定是否打印鏈接到它的腳本或我們的本地託管副本。爲什麼Perl的LWP :: Simple自帶的head命令只能在命令行中調用它時才起作用?
這是我正在使用的代碼的副本。
my $jquery_host = "http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js";
my $header = LWP::Simple::head($jquery_host);
if(defined $header) {
return qq{<script type="text/javascript" src="$jquery_host"></script>};
}
else {
return qq{<script type="text/javascript" src="$localPath"></script>};
}
當我運行此命令行的代碼,我沒有問題,檢索的響應,並適當地打印出腳本標籤鏈接到jQuery的谷歌的副本。但是,當我從構建html頁面的perl腳本實際調用它時,它每次都找不到任何內容,並打印出鏈接到我們自己副本的腳本標記。
什麼權限或其他類型的障礙可能會暫停此連接?
感謝您的幫助。
注意:這隻能在我們的本地測試服務器上運行到目前爲止。命令行也在測試服務器上運行。
也許當添加到您的其他腳本$ jquery_host不再是你所期望的在該點的頭()請求。添加一個打印()來查看。 – JRFerguson
該谷歌的jquery副本的URL是正確的。每當我從命令行運行函數時,頭部都會返回信息。 –