在脚本中修改 Zapier 请求 url

Modify Zapier request url in Scripting

我正在尝试将 action_fields 中的数据作为查询字符串添加到 bundle.request.url。这是原始包数据

{
  "auth_fields": {
    "sub_domain": "abc", 
    "apiKey": "1234"
  }, 
  "request": {
    "files": {}, 
    "url": "https://abc.my.workfront.com/attask/api/v7.0/project?&method=post", 
    "headers": {
      "Content-Type": "application/json; charset=utf-8", 
      "Accept": "application/json"
    }, 
    "params": {
      "apiKey": "1234"
    }, 
    "data": "{\"status\": \"PLN\", \"name\": \"Test 2\"}", 
    "method": "POST"
  }, 
  "action_fields": {
    "status": "PLN", 
    "name": "Test 2"
  }, 
  "action_fields_full": {
    "status": "PLN", 
    "name": "Test 2"
  }, 
  "meta": {
    "frontend": false
  }, 
  "action_fields_raw": {
    "status": "PLN", 
    "name": "Test 2"
  }, 
  "url_raw": "https://{{sub_domain}}.my.workfront.com/attask/api/v7.0/project?&method=post", 
  "zap": {}
}

我正在研究 Zapier 提供的示例并想出了这个

'use strict';

var Zap = {
    project_pre_write: function(bundle) {
       // bundle.request.method = "POST";
        console.log(bundle.request.action_fields["status"]);
        bundle.request.url = "http://abc.my.workfront.com/attask/api/v8.0/project?method=post";
        bundle.request.params = $.param(bundle.request.action_fields);
        console.log(bundle.request.params);

        return bundle.request;
    }

};  

但是我抛出了这个错误

TypeError: Cannot read property 'jquery' of undefined:

我不是 Javascript 专家(甚至不是用户),所以任何想法都将不胜感激。最终结果应该是这样的

http://abc.my.wrokfront.com/attask/api/v7.0/project?method=post&name=Test%202&status=PLN&apiKey=1234

试试这个:

bundle.request.url += '&' + jQuery.param(bundle.action_fields);