26 lines
837 B
TypeScript
26 lines
837 B
TypeScript
// 阿里云 - 函数计算:FC
|
||
// https://cloud.tencent.com/product/scf
|
||
|
||
import { init, server } from "./models/server";
|
||
|
||
// 阿里云函数计算 - HTTP函数
|
||
export async function handler(req: any, res: any, context: any) {
|
||
// JSON 请求
|
||
if (req.headers['content-type']?.includes('application/json')) {
|
||
let apiName = req.path.slice(1); // 去除开头的 "/"
|
||
let ret = await server.inputJSON(apiName, JSON.parse(req.body));
|
||
res.setStatusCode(ret.isSucc ? 200 : 500);
|
||
res.send(JSON.stringify(ret));
|
||
}
|
||
// 二进制请求
|
||
else {
|
||
let output = await server.inputBuffer(req.body);
|
||
res.send(Buffer.from(output));
|
||
}
|
||
}
|
||
|
||
// 阿里云函数计算 - 初始化
|
||
export async function initializer(context: unknown, callback: Function) {
|
||
await init();
|
||
callback();
|
||
} |