Veeva保管库即使登录成功也返回INVALID_SESSION_ID

时间:2018-12-11 08:49:43

标签: node.js veeva

我有以下代码从veeva保险库获取product_id:

let volt_APILogin = () => {
    let args = {
        data: { username: VOLT_CREDENTIALS.get('cred').Username  , password: VOLT_CREDENTIALS.get('cred').Password },
        headers : { "Content-Type": "application/x-www-form-urlencoded", "Cache-Control": "no-cache" }
    };

    return new Promise(function(resolve, reject){
        client.post("https://vv-agency-indegene.veevavault.com/api/v18.3/auth", args, function (data, response) {
            SESSIONID = data.sessionId;
            console.log(SESSIONID);            
            resolve("Connected Successfully");
        });
    });
} 

let volt_getProduct = () => {
    return new Promise(function(resolve,reject){
        let args = {      
            headers: {
                "Authorization" : SESSIONID
            }        
        };

        console.log(SESSIONID);

        client.post(`https://vv-agency-indegene.veevavault.com/api/v18.3/query?q=SELECT id FROM product__v WHERE name__v = '${VOLT_CREDENTIALS.get('cred').productName }'` , args , function( data , res) {
            console.log(data);
            console.log( 'PRODUCT ID IS ' + data.data[0].id);
            productID = data.data[0].id;
            resolve("Product ID");
        });
    })  
}

我这样称呼这些功能:

volt_APILogin().then( () => {
      volt_getProduct().then( () => {

      });
});

但是我收到以下错误消息:

{ responseStatus: 'FAILURE',
  errors:
   [ { type: 'INVALID_SESSION_ID',
       message: 'Invalid or expired session ID.' } ] }

但是,我不相信我的会话ID无效,如文档的HERE中所述。我做错什么了吗?如果我没有必要的特权,我应该得到INSUFFICIENT_ACCESS错误,对吗?

0 个答案:

没有答案