javascript - 当 Javascript 调用 Perl 脚本时捕获操作系统异常

标签 javascript perl exception

我有一个 Java 脚本(比如)a.js,它通过以下方式调用 Perl 脚本 b.pl:

JavaScript:xmlhttpPost("http://:/cgi-bin/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的代码 异常(exception):

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

$ftp 利用 Net::FTP。

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

请指教。谢谢!

最佳答案

我会考虑调查CGI::Carp 。该文档中似乎有几种不同的方法可能会让您感兴趣。

关于javascript - 当 Javascript 调用 Perl 脚本时捕获操作系统异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25148398/

相关文章:

javascript - Rails ActiveRecord BigNum 到 JSON

perl - 这是测试 Perl 代码的好方法吗?

perl - if (@array) 在 perl 中是什么意思?

c# - Task.Run 和 Task.Factory.StartNew 之间不同的异常处理

javascript - 带有 Google map 的远程 Bootstrap 模态

javascript - 对函数调用进行排序

javascript - 是否可以在 for 循环中引用匿名数组?

perl - 我可以在 SOAP::Lite 中强制进行进一步的 XML 解析吗?

c++ - 如果你不应该在析构函数中抛出异常,你如何处理其中的错误?

c++ - 赋值的计算顺序,对于一个基本类型的变量,右操作数抛出异常