xero.apiCallback не является функцией - PullRequest
0 голосов
/ 28 марта 2020

Я получаю ошибку в своем ксерокоде. Там написано, что xero.apiCallback не является функцией. Кажется, что другие функции в xero работают.

Вот мой код:

require('dotenv').config();

const express = require('express');

const XeroRouter = express.Router();

const {  XeroClient } = require('xero-node');

const { TokenSet } = require('openid-client');

const client_id = process.env.CLIENT_ID;
const client_secret = process.env.CLIENT_SECRET;
const redirectUrl = process.env.REDIRECT_URI;
const scopes = "openid profile email accounting.settings accounting.reports.read accounting.journals.read accounting.contacts accounting.attachments accounting.transactions offline_access";

const xero = new XeroClient({
    clientId: client_id,
    clientSecret: client_secret,
    redirectUris: [redirectUrl],
    scopes: scopes.split(" "),
});

if ( !client_secret || !redirectUrl) {
    throw Error('Environment Variables not all set - please check your .env file in the project root or create one!')
}


XeroRouter.get('/', async (req, res) => {
    try {
        let consentUrl = await xero.buildConsentUrl();

        res.redirect(consentUrl);
    } catch (e) {
        res.status(e.status || 500);
        console.log(e);
    }
});


XeroRouter.get("/callback", async (req, res) => {

    let tokenSet = await xero.apiCallback(req.url);

    console.log(req.url); //This has value
    console.log(tokenSet); // this returns TokenSet {}


});

module.exports = XeroRouter;

Я не уверен, почему apiCallback не работает, но он говорит, что это работает в документации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...