Me parece encontrar en cada parte del desbordamiento de pila, cualquier tutorial
ese azure debe iniciar sesión antes de obtener el código para acceder al token de actualización
const config = { auth: { clientId: process.env.CLIENT_ID, authority: process.env.AUTHORITY, clientSecret: process.env.CLIENT_SECRET }, system: { loggerOptions: { loggerCallback(loglevel, message, containsPii) { console.log(message); }, piiLoggingEnabled: false, logLevel: msal.LogLevel.Verbose, } } }; const authCodeUrlParameters = { scopes: ["user.read","user.write"], redirectUri: process.env.REDIRECT_URL, }; pca.getAuthCodeUrl(authCodeUrlParameters).then((response) => { // res.redirect(response); console.log(response); }).catch((error) => console.log(JSON.stringify(error))); console.log(authCodeUrlParameters); const pca = new msal.ConfidentialClientApplication(config); app.get('/redirect', (req, res) => { const tokenRequest = { code: req.query.code, scopes: ["user.read"], redirectUri: REDIRECT_URI, }; pca.acquireTokenByCode(tokenRequest).then((response) => { console.log("\nResponse: \n:", response); res.sendStatus(200); }).catch((error) => { console.log(error); res.status(500).send(error); }); });getAuthCodeUrl devuelve un enlace en el que necesitaría iniciar sesión para obtener mi código, que luego necesitaría usar para obtener los tokens y tener mi token de actualización allí.
pero no quiero acceder al enlace ya que estoy usando la consola, no la GUI,
Mi mente está en el punto de ruptura, no sé qué hacer. Solo necesito la API de One Drive para poder cargar mi archivo.
mayoría en el stackoverflow, tiene un código que requiere un token de actualización
No puedo obtener el token de actualización sin acceder al enlace.
¿Alguna ayuda?
Me las arreglé para encontrarlo, debe encontrar las credenciales del cliente,
Uso encabezados de solicitud https://login.microsoftonline.com/{tenant id}/oauth2/v2.0/token
la identificación del inquilino se encuentra en el registro de la aplicación en Azure
luego asegúrese de que el tipo de concesión sea grant_type: 'client_credentials', scope: 'https://graph.microsoft.com/.default' //no estoy seguro si esto se puede cambiar todavía
ya sea use request lib o axios get put post head
espero que ayude a otras personas cuando encuentren este problema