阿里云函数计算+表格存储微框架

该博客介绍了如何使用Node.js在阿里云函数计算上创建http触发器,提供API服务,并利用函数计算服务角色实现VPC内访问表格存储的功能。通过提供的使用示例,展示了框架的简便性。
摘要由CSDN通过智能技术生成

Nodejs12
http触发器,提供API服务
函数计算服务角色允许通过VPC访问表格存储

保存下面文件为serverless.js

// serverless.js
const util = require('util')
const TableStore = require('tablestore')
const getJsonBody = util.promisify(require('body/json'))

let client
exports.initializer = (context, callback) => {
   
  client = new TableStore.Client({
   
    accessKeyId: context.credentials.accessKeyId,
    accessKeySecret: context.credentials.accessKeySecret,
    securityToken: context.credentials.securityToken,
    endpoint: '[TableStore Endpoint]',
    instancename: '[TableStore Instance Name]'
  })
  callback(null, '')
}

// handlers = { GET: [func1, func2], POST: [func] }
// handler function:
// - @return false - next
// - @return { status, data } - abort
exports.handler = (handlers) => {
   
  return async (req, resp) => {
   
    const m = req.method
    resp.setHeader('content-type', 'text/plain;charset=utf-8')
    if (!handlers[m]) {
   
      resp.setStatusCode(404)
      resp.send('Method not allowed')
      return
    }
    try {
   
      if (m === 'POST' || m === 'PUT') req.body = await getJsonBody(req)
    } catch {
   
      resp.setStatusCode(400)
      resp.send('需要JSON格式的请求体')
      return
    }
    try {
   
      let res = false
      for (const f of handlers[m]) {
   
        res = await <
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值