Mad*_*Jha 5 node.js es6-modules serverless vercel
当访问包含无服务器端点的顶级文件夹的 React 应用程序 Vercel 部署中的 API 端点时,我收到此错误api/。有趣的是,这个 API 端点在本地使用vercel dev. 更有趣的是,同一 API 文件夹中也使用 ES6 模块导入的类似 API 端点工作得很好。
[POST] /api/checkout
20:49:23:62
2021-02-20T04:49:23.818Z undefined ERROR /var/task/api/checkout.js:1
import { firebaseAdmin, stripe } from "./_firebase_stripe";
^^^^^^
SyntaxError: Cannot use import statement outside a module
at wrapSafe (internal/modules/cjs/loader.js:979:16)
at Module._compile (internal/modules/cjs/loader.js:1027:27)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
at Module.load (internal/modules/cjs/loader.js:928:32)
at Function.Module._load (internal/modules/cjs/loader.js:769:14)
at Module.require (internal/modules/cjs/loader.js:952:19)
at require (internal/modules/cjs/helpers.js:88:18)
at /var/task/___vc_launcher.js:26:28
at Object.<anonymous> (/var/task/___vc_launcher.js:74:7)
at Module._compile (internal/modules/cjs/loader.js:1063:30)
RequestId: 0e27de3f-fdd1-401a-a5e2-030327a15a31 Error: Runtime exited with error: exit status 1
Runtime.ExitError
Run Code Online (Sandbox Code Playgroud)
这是部署后在服务器上失败但在本地运行良好的代码。
import { firebaseAdmin, stripe } from "./_firebase_stripe";
import { getConfig } from "./_config";
import {
verifiedUser,
getCustomerCheckoutDetails,
readyToGo,
} from "./_helpers";
export default async function Checkout(req, res) {
const { url } = getConfig();
let sessionId;
Run Code Online (Sandbox Code Playgroud)
api/hello.js这是访问时在本地和部署版本上都可以正常工作的内容/api/hello。
import { firebaseAdmin } from "./_firebase_stripe";
import { getConfig } from "./_config";
export default function (_req, res) {
const version = firebaseAdmin.SDK_VERSION;
return res.send({ ...getConfig(), version });
}
Run Code Online (Sandbox Code Playgroud)