You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Adobe Acrobat动作执行JavaScript中执行curl并静默调用URL?

在Adobe Acrobat Pro中无跳转调用URL的解决方案

为什么现有方法不生效

  • exec('curl ...') 失败:Acrobat的JavaScript运行在沙箱环境中,出于安全限制,无法直接调用系统级命令(如curl),因此这个方式从根本上不可行。
  • this.submitForm() 会打开新文件:该方法的设计初衷是提交表单并加载服务器返回的响应内容,因此默认会触发跳转或打开新文件的行为,不符合无跳转需求。

正确实现方式:使用Net.HTTP.request()

Acrobat内置的Net.HTTP.request()方法可以在后台发起HTTP请求,完全不会触发页面跳转或新文件打开,完美匹配你的需求。

示例代码(GET请求)

// 配置请求参数
var requestConfig = {
    cURL: "http://myurl.com",
    cMethod: "GET"
};

// 发起后台请求
Net.HTTP.request({
    oRequest: requestConfig,
    onSuccess: function(response) {
        // 可选:请求成功后的处理逻辑
        console.println("请求成功,状态码:" + response.nStatusCode);
    },
    onError: function(error) {
        // 可选:请求失败后的处理逻辑
        console.println("请求失败:" + error.cErrorMsg);
    }
});

POST请求示例(如果需要提交数据)

var requestConfig = {
    cURL: "http://myurl.com",
    cMethod: "POST",
    cBody: "key1=value1&key2=value2", // 表单格式数据
    cContentType: "application/x-www-form-urlencoded"
};

Net.HTTP.request({
    oRequest: requestConfig,
    onSuccess: function(response) {
        console.println("POST请求成功");
    },
    onError: function(error) {
        console.println("POST请求失败:" + error.cErrorMsg);
    }
});

注意事项

  • 检查Acrobat安全设置:依次进入「编辑」>「首选项」>「JavaScript」>「网络访问」,确保已允许访问目标URL,或根据安全需求启用「允许所有网站」。
  • 版本兼容性:该方法支持Acrobat Pro DC及较新版本,旧版本可能存在语法差异。
  • 响应处理:onSuccess和onError回调是可选的,若不需要可以省略,仅保留核心请求逻辑。

内容的提问来源于stack exchange,提问作者Ney LS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 15:33:21