@stone-js/tencent-scf-http-adapter
v0.8.8
Published
Tencent Cloud SCF HTTP adapter for Stone.js. Run your app on Serverless Cloud Function HTTP triggers (API Gateway proxy integration) using the Continuum Architecture.
Downloads
1,341
Maintainers
Readme
Stone.js - Tencent SCF HTTP Adapter
The Tencent SCF HTTP Adapter lets your Stone.js application run on Tencent Cloud Serverless Cloud Function HTTP triggers, unchanged. SCF fronts HTTP with API Gateway's proxy integration, so the adapter normalizes that event into an intention and returns the { statusCode, headers, body, isBase64Encoded } response the gateway expects, fully aligned with the Continuum Architecture.
Introduction
In Stone.js, adapters are the translation layer between a platform and your domain. Tencent SCF invokes an HTTP function via API Gateway with (event, context), where event is a proxy payload (httpMethod, path, headers, queryString, body, isBase64Encoded). This adapter turns it into a standardized IncomingHttpEvent, runs it through your kernel, and returns the proxy response, so your routes, validation and cookies run on SCF with no changes to the domain.
It does not own a server: run() returns the (event, context) handler SCF invokes.
Installation
npm install @stone-js/tencent-scf-http-adapter
# or
pnpm add @stone-js/tencent-scf-http-adapter
# or
yarn add @stone-js/tencent-scf-http-adapterRequires
@stone-js/core,@stone-js/http-core,@stone-js/filesystemand@stone-js/envas peer dependencies.
Usage
Declarative (decorator):
import { StoneApp } from '@stone-js/core'
import { Routing } from '@stone-js/router'
import { TencentScfHttp } from '@stone-js/tencent-scf-http-adapter'
@TencentScfHttp()
@Routing()
@StoneApp({ name: 'tasks' })
export class Application {}Imperative (blueprint):
import { defineStoneApp } from '@stone-js/core'
import { routerBlueprint } from '@stone-js/router'
import { tencentScfHttpAdapterBlueprint } from '@stone-js/tencent-scf-http-adapter'
export const App = defineStoneApp(
{ name: 'tasks' },
[routerBlueprint, tencentScfHttpAdapterBlueprint]
)run() returns the (event, context) handler SCF invokes:
// index.js — the SCF function entry
exports.main_handler = await stoneApp.run()Enable API Gateway proxy integration ("集成响应" / base64 for binary) so SCF passes the full request event and returns the structured response.
Documentation
See the official documentation for the full guide.
