Estoy tratando de enviar un informe de errores a través de la API y tengo un token de autenticación en la configuración de metadatos de mis aplicaciones, que normalmente funciona. Refactoricé esa lógica fuera de mi main.js y en su propia clase, pero ahora recibo errores 403, que solo puedo imaginar que se debe a cómo estoy haciendo referencia al token.
class Logger { constructor(settings) { // getting the settings here and assigning it to the constructor variable this.settings = settings; } static async logInfo(data = {}) { console.log('Hello!') const url = 'https://sampleUrl' const response = await fetch(url, { method: 'POST', headers: { "X-TrackerToken": `${metadata.settings.pivotal_token}`, "Content-Type": "application/json" }, body: JSON.stringify(data) }); return response.json(); } } const metadata = { settings: '' } const logger = new Logger(metadata.settings);Cómo llamo a la clase Logger en Main.js
Logger.logInfo(metadata.settings, bugInfo).then(console.log('print')) })Al pasar el mouse, la información sobre herramientas devuelve el mensaje "La propiedad no existe en el tipo de error de cadena". Antes de pasar a su propia clase, hice referencia a ella con la misma sintaxis, por lo que no estoy seguro de cómo proceder aquí.
Está pasando la settings con el constructor, por lo que necesita usar esta setting en la clase Logger , pero está usando otra variable para X-TrackerToken que no está definida.
const metaData = { settings: "" } metadata.settings.pivotal_token // ---> undefined Está tratando de obtener pivotal_token de la configuración, que es una cadena y, obviamente, no existe un método pivotal_token para sus cadenas de settings .
Está haciendo metadta.settings.pivotal_token pero metadta.settings es una cadena. No tiene ninguna propiedad pivotal_token.