Eswlnk Blog Eswlnk Blog
  • 资源
    • 精彩视频
    • 破解专区
      • WHMCS
      • WordPress主题
      • WordPress插件
    • 其他分享
    • 极惠VPS
    • PDF资源
  • 关于我
    • 论文阅读
    • 关于本站
    • 通知
    • 左邻右舍
    • 玩物志趣
    • 日志
    • 专题
  • 热议话题
    • 游戏资讯
  • 红黑
    • 渗透分析
    • 攻防对抗
    • 代码发布
  • 自主研发
    • 知识库
    • 插件
      • ToolBox
      • HotSpot AI 热点创作
    • 区块
    • 快乐屋
    • 卡密
  • 乱步
    • 文章榜单
    • 热门标签
  • 问答中心反馈
  • 注册
  • 登录
首页 › 代码发布 › API接口上云|Serverless云函数服务部署实战

API接口上云|Serverless云函数服务部署实战

Eswlnk的头像
Eswlnk
2022-02-25 1:35:58
API接口上云|Serverless云函数服务部署实战-Eswlnk Blog
智能摘要 AI
本文介绍了如何将本地API接口迁移到Serverless环境中,以减轻服务器负担并提高运行效率。作者选择了腾讯云的云函数服务,因其价格实惠且功能强大。在创建云函数时,选择了广州地区和PHP 7.2环境,并详细说明了如何处理函数参数和触发器设置。随后,作者配置了API网关,包括参数、请求方法和跨域设置,并绑定了自定义域名。最终,成功将API接口迁移至Serverless平台,实现了便捷管理和监控。

相信大家对于云服务并不陌生,而本次我们要做的就是将本地的API接口转存至Serverless并重新部署,绑定新域名,减轻我们的服务器负担,减少运行堵塞。由于网络空间测绘平台的域名还在备案,所以我就先将API接口上传到Serverless上。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

服务选择

由于上次参加腾讯云举办的性能检测竞赛,我不经意间看到了腾讯云的云函数服务优惠,可以说是相当给力:就一个小站而言,一个月只需要几元甚至免费的价格,非常划算,所以我选择使用了腾讯云的函数服务。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

云函数创建

地区选择

这里我的API接口使用PHP编写,所以在后续的配置方面与Node和python相比比较麻烦

首先,选择我们创建云函数服务的地区。因为我们并没有对用户地区的要求,所以这里我选择的是广州。如果你有海外用户,可以选择到新加坡、硅谷等地区。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

本次创建的属于API接口,所以在函数类型上我选择事件函数。这里简单解释一下:事件函数可以被任意触发器触发,而Web函数在后续创建API网关的类型时,只能选择WSS访问,并且需要更改业务接口

编写函数代码

选择函数所需要的的运行环境,包含java,python,go以及node,我选择PHP 7.2这个环境。为了以后便于维护API接口,所以我们分批上传代码文件,或者自己手动编写函数。执行方法就对应着我们 所要运行的函数。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

对于这个云函数的执行方法,最开始还是把我弄得一头雾水,自己琢磨了好半天,最后还是通过官方给出的技术文档和调试解决了传参问题。

所以,为了让大家避这个坑,这里为大家简单解释下这个执行方法的参数和运行问题。

例如官方给出的函数例子:

<?php

$gl = 1;

function main_handler($event, $context) {
    global $gl;
    print "good";
    print " job ";
    print $gl;
    print "\n";
    $gl += 1;
    error_log( "Hello, errors!" );
    var_dump($event);
    var_dump($context);

    return "hello world";
}

?>

其中,body、header和queryString等参数都是传入了$event中,所以这里的$event相当于取代了$_GET[''],来获取传入的参数,例如name、password等。

再详细一点,例如$_GET['url'],来获取传入的url参数的值,而这里我们需要将它替换为 :

$event['queryString']['url'](建议先对$event使用json_decode(json_encode($event), true),方便后续的取值)

触发器创建

这里需要注意一点,如果你要让你的API接口可以公共访问,那么你就需要在触发方式上选择API网关触发,并规定请求方式和发布环境等等。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

创建完毕后,我们就可以在访问路径处看到当前函数的访问地址,如下图所示:

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

API网关配置

在创建完云函数后,我们还需要对云函数绑定的API网关进行配置。大致流程和云函数创建相差不多,首先还是选择地区创建。这里需要注意,如果我们选择中国大陆以外的区域,腾讯云是要额外收取费用的,不过可以绑定未备案域名。如果没有什么其他的需求,选择华东、华南和华北的地区就行。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

前端配置

例如我这里的API网关配置,添加参数配置和请求方法以及跨域。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

这里参数设置对应刚才云函数中请求的参数,以及响应结果的返回类型配置,默认创建网关后的返回类型应该都是JSON。如果需要其他类型,可以在API编辑中修改。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

域名绑定

这里我们在API管理中心,绑定了自定义域名。国内的API网关对于域名的要求是备案,如果没有备案又想要绑定自己的域名,那就只有选择国外的API网关地区。

API接口上云|Serverless云函数服务部署实战-Eswlnk Blog

并且API网关可以自定义配置协议和SSL证书,以及路径映射。

结语

本次我将网络空间测绘平台的API接口已经全部搬迁到了Serverless上,非常方便,而且可以很清楚地看到API的调用次数以及运行情况,后续的小程序开发和更新,大部分也要用到云函数。

本站默认网盘访问密码:1166
本站默认网盘访问密码:1166
APIAPI上云Serverless云函数
2
1
Eswlnk的头像
Eswlnk
一个有点倒霉的研究牲站长
赞赏
网络空间测绘页面开发日志
上一篇
解读二维码美化的实现原理
下一篇

评论 (1)

请登录以参与评论
现在登录
  • 遇到你的那刻肆意释放

    哈哈 很棒

    4 年前 • 182.150.*.* • Unknown Unknown • 回复

猜你喜欢

  • 「日志记录」逆向必应翻译网页版API实现免费调用
  • 「代码分享」第三方平台VIP视频解析API接口
  • 「至臻原创」某系统网站登录功能监测
  • 「技术教程」使用Playwright进行API接口测试
  • 「开发日志」在Vue3中如何为路由Query参数标注类型
Eswlnk的头像

Eswlnk

一个有点倒霉的研究牲站长
1108
文章
319
评论
679
获赞

随便看看

「古腾堡区块分享」关注微信公众号回复关键字获取口令区块
2023-11-29 0:45:56
Go语言错误处理为什么更推荐使用pkg/errors 三方库?
2022-06-27 13:39:45
「原创代码」Python获取酷狗音乐直链
2023-01-05 9:21:01

文章目录

专题展示

WordPress53

工程实践37

热门标签

360 AI API CDN java linux Nginx PDF PHP python SEO Windows WordPress 云服务器 云服务器知识 代码 免费 安全 安卓 工具 开发日志 微信 微软 手机 插件 攻防 攻防对抗 教程 日志 渗透分析 源码 漏洞 电脑 破解 系统 编程 网站优化 网络 网络安全 脚本 苹果 谷歌 软件 运维 逆向
  • 首页
  • 知识库
  • 地图
Copyright © 2023-2025 Eswlnk Blog. Designed by XiaoWu.
本站CDN由 壹盾安全 提供高防CDN安全防护服务
蜀ICP备20002650号-10
页面生成用时 0.949 秒   |  SQL查询 35 次
本站勉强运行:
友情链接: Eswlnk Blog 网站渗透 倦意博客 特资啦!个人资源分享站 祭夜博客 iBAAO壹宝头条
  • WordPress142
  • 网络安全64
  • 漏洞52
  • 软件52
  • 安全48
现在登录
  • 资源
    • 精彩视频
    • 破解专区
      • WHMCS
      • WordPress主题
      • WordPress插件
    • 其他分享
    • 极惠VPS
    • PDF资源
  • 关于我
    • 论文阅读
    • 关于本站
    • 通知
    • 左邻右舍
    • 玩物志趣
    • 日志
    • 专题
  • 热议话题
    • 游戏资讯
  • 红黑
    • 渗透分析
    • 攻防对抗
    • 代码发布
  • 自主研发
    • 知识库
    • 插件
      • ToolBox
      • HotSpot AI 热点创作
    • 区块
    • 快乐屋
    • 卡密
  • 乱步
    • 文章榜单
    • 热门标签
  • 问答中心反馈