使用 Node.js 将参数传递给 IBM Cloud Functions 中的 Db2 查询的异常

Exception passing parameters to Db2 query in IBM Cloud Functions using Node.js

我在 IBM Cloud Functions / OpenWhisk 中编写了一个基于 Node.js 的操作。该操作从 Db2 检索数据。当我没有参数标记时,查询有效。当我使用如下所示的参数并传入 {"confname" : "IDUGEMEA2018" } 时,它会遇到错误并引发异常。

为什么?需要更改什么?

var ibmdb = require('ibm_db');

function queryConferences(dsn, confname) { 
 try {    
    var conn=ibmdb.openSync(dsn);
    var data=conn.querySync("select shortname, location, begindate, enddate, uri from conference where shortname=?", confname);
    conn.closeSync();
    return {result : data};
 } catch (e) {
     return { dberror : e }
 }
}

function main({confname, __bx_creds: {dashDB:{dsn}}}) {
    return queryConferences(dsn,confname);
}

它失败了,因为 bindingParameters 需要一个数组。我让它工作通过以下内容:

{"confname" : ["IDUGEMEA2018"] }

在 CLI 中,我使用以下内容对其进行了测试:

bx wsk action invoke myAction -p confname "[\"IDUGEMEA2018\"]" -r