firebase 自定义令牌 header 在部署时抛出错误
firebase custom token header throws error while deploying
我的这个带有 firebase 身份验证的 MERN 应用程序运行良好。它使用自定义令牌在后端对用户进行身份验证(node.js)。
解码 id 令牌正在使用此语句:
const header = req.headers?.authorization;
但是在部署到digitalocean时抛出如下错误:
/home/admin-nithur/app/authenticateToken.js:8
const header = req.headers?.authorization;
^
SyntaxError: Unexpected token .
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/home/admin-nithur/app/server.js:9:23)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
为什么会这样?有什么想法吗?
可选链接 (属性?.otherProperty) 仅在 Node v14 及更高版本中实现,您可能使用的是旧版本。
您可能需要将 eslint 配置中的 ecmaVersion 设置为 2020。
{
"parserOptions": {
"ecmaVersion": 2020
}
}
还要确保您使用的是 Node 14。
我的这个带有 firebase 身份验证的 MERN 应用程序运行良好。它使用自定义令牌在后端对用户进行身份验证(node.js)。
解码 id 令牌正在使用此语句:
const header = req.headers?.authorization;
但是在部署到digitalocean时抛出如下错误:
/home/admin-nithur/app/authenticateToken.js:8
const header = req.headers?.authorization;
^
SyntaxError: Unexpected token .
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/home/admin-nithur/app/server.js:9:23)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
为什么会这样?有什么想法吗?
可选链接 (属性?.otherProperty) 仅在 Node v14 及更高版本中实现,您可能使用的是旧版本。
您可能需要将 eslint 配置中的 ecmaVersion 设置为 2020。
{
"parserOptions": {
"ecmaVersion": 2020
}
}
还要确保您使用的是 Node 14。