2015-12-30 37 views
0

我對此文檔有點困惑。我可能讀到這個錯誤,但文檔說您可以根據您在觸發器給出的文本字段中定義的內容添加變量到input對象。根據這張圖片,用戶正在定義3個輸入變量body,receiveDatesubjecthttps://zapier.cachefly.net/storage/photos/c30f2b170737ba3863c17b714662d9dd.png在輸出/輸入中定義的日誌變量

但是,在代碼中,它們引用了一個名爲plainBody的變量,該變量尚未定義。這將如何工作?

是否有一個對象,我可以註銷,每個字段都在我的觸發器中出現?還是必須使用輸入字段將它們定義爲輸入?

編輯:我也不能讓任何z圖書館工作。根據這一文件:https://zapier.com/developer/documentation/v2/built-functions-tools/#available-libraries我應該能夠做到像

// let's call http://httpbin.org/get?hello=world with an extra header 
var request = { 
    method: 'GET', 
    url: 'http://httpbin.org/get', 
    params: { 
    hello: 'world' 
    }, 
    headers: { 
    Accept: 'application/json' 
    }, 
    auth: null, 
    data: null 
}; 

// perform asynchronously 
z.request(request, function(err, response){ 
    console.log('Status: ' + response.status_code); 
    console.log('Headers: ' + JSON.stringify(response.headers)); 
    console.log('Content/Body: ' + response.content); 
}); 

,但我得到的是,這裏說,來自Zapier z is not defined theFunction

回答

1

開發商的錯誤!

您在input對象中提供的數據是運行時將提供給代碼的所有數據;不幸的是,它看起來像該示例截圖中有一個錯字(這兩個條件中的檢查應該是input.body)。

您引用的文檔鏈接是Zapier Developer Platform,這是您將自己的應用添加到Zapier以供其他人使用的方式。這也在後端運行Javascript,所以我看到這兩件事很容易混淆!

您在查找與running code in a Zap相關的文檔。

要直接回答您的問題,請在代碼中使用Zapier代碼應用程序中沒有z對象。爲了使HTTP請求,您需要使用fetch庫:

fetch('http://example.com/') 
    .then(function(res) { 
    return res.text(); 
    }).then(function(body) { 
    var output = {id: 1234, rawHTML: body}; 
    callback(null, output); 
    }).catch(function(error) { 
    callback(error); 
    }); 

該代碼從Introductory HTTP Example鏈接的文檔中服用。

希望有幫助!