node-fetch 返回不记名令牌

问题描述 投票:0回答:1

我正在尝试使用 node-fetch 在函数中返回不记名令牌。但我遇到了以下问题:

import fetch from 'node-fetch'


export class APIToken {


    async getToken() {

        const tenant_id = '123';

        const formData = new URLSearchParams();
        formData.append('grant_type', 'password');
        formData.append('scope', 'api://');
        formData.append('client_secret', '123');
        formData.append('client_id', '456');
        formData.append('username', '[email protected]');
        formData.append('password', 'password!!');
    
        const response = await fetch(`https://login.microsoftonline.com//${tenant_id}//oauth2/token`, {
            method: 'POST',
            body: formData
            
        });
        const responseBody = await response.json();
        const accessToken = responseBody.access_token;
        return accessToken

    }
}

结果:

responseBody is of type 'unknown'

在此行:

const accessToken = responseBody.access_token;
typescript node-fetch
1个回答
0
投票

发现问题了。我必须安装不同版本的

node-fetch

npm install node-fetch@2

而不是

npm install node-fetch

这解决了我的问题。这是与切换到 ESM 相关的错误

© www.soinside.com 2019 - 2024. All rights reserved.