当Javascript调用Perl脚本时,捕获OS异常

Catch OS exception when Javascript calls Perl script

本文关键字:捕获 OS 异常 脚本 Javascript 调用 Perl      更新时间:2023-09-26

我有一个Java脚本(比如)a.js调用Perl脚本b.pl:

JavaScript: xmlhttpPost (http:///目录/b.pl");

xmlhttpPost类似于:

function xmlhttpPost(strURL)
{
    var xmlHttpReq=createXMLHttpRequest();
    xmlHttpReq.open('POST', noCache(strURL), true);

createXMLHttpRequest创建ActiveXObject

b.pl调用另一个perl模块c.pm。在c.pm中,有一段代码用于捕获OS例外:

eval {
    $ftp->put($filenamepath); };
if ($@) {
    return "FTP time-out"; }

$ftp利用Net:: ftp。

如果我从命令行运行b.pl,并且在使用ftp放置文件时出现超时异常,则异常被正确捕获。但是,如果b.pl通过a.js运行,则不会捕获超时异常。

请建议。谢谢!

我会考虑研究一下CGI::Carp。文档中似乎有几种不同的方法可能会引起您的兴趣。