我离线使用无服务器并且它没有连接我的 typeorm 数据库。 我使用 sls offline --noPrependStageInUrl 运行该项目。 有没有办法将无服务器与 postgres 连接起来?我知道有 aws aurora bt 我是新手,不知道如何配置。
我的 index.js 文件:
import jwt from 'jsonwebtoken';
import serverless from 'serverless-http';
import shopifyAuth, {verifyRequest} from '@shopify/koa-shopify-auth';
import 'cross-fetch/polyfill';
import Koa from 'koa';
import Router from 'koa-router';
import apiRouter from './routes/index.routes';
import { createConnection } from 'typeorm';
const app = new Koa();
const router = new Router();
app.use(
shopifyAuth({
apiKey: process.env.SHOPIFY_API_KEY,
secret: process.env.SHOPIFY_API_SECRET_KEY,
scopes: [
'read_themes, write_themes',
'read_script_tags',
'write_script_tags',
],
accessMode: 'offline',
async afterAuth(ctx) {
console.log('We did it!', ctx.state);
const { shop, accessToken } = ctx.state.shopify;
ctx.cookies.set('shop', shop, {
httpOnly: false,
secure: true,
sameSite: 'none',
domain: process.env.SUBDOMAIN,
});
ctx.cookies.set('accessToken', accessToken, {
httpOnly: false,
secure: true,
sameSite: 'none',
domain: process.env.SUBDOMAIN,
});
var token = jwt.sign(
{
shop: shop,
accessToken:accessToken,
apiKey: process.env.SHOPIFY_API_KEY
},
process.env.SHOPIFY_API_SECRET_KEY
);
ctx.cookies.set('jwtToken', token, {
httpOnly: true,
secure: true,
sameSite: 'none',
domain: process.env.SUBDOMAIN,
});
ctx.statusCode = '302';
ctx.redirect(process.env.FRONTEND);
},
})
);
app.use(apiRouter.routes()).use(apiRouter.allowedMethods());
app.use(async (ctx) => {
const {
query: { shop },
} = ctx;
const routeForRedirect = shop == null ? `/` : `/auth/?shop=${shop}`;
ctx.redirect(routeForRedirect);
});
app.use(async () => { await createConnection()
.then(() => {
console.log("Connected to the database")
})
.catch(() => console.log("Unable to connect to the database"))});
module.exports.handler = serverless(app);
有什么方法可以将无服务器与 postgres 连接起来?