前言
前期我使用Python写了自己的API平台 https://api.birdy02.com
但是在使用过程中经常会用到高并发,Python对于高并发来讲,虽然使用了异步编程和uvicorn来提升性能,使用起来还是会感觉到python的“力不从心”,所以使用了Golang来对平台重写,因为go是原生支持高并发的,并且在我之前优化web性能时,也看到了py框架和go的差距。
参考链接 https://tendcode.com/subject/article/Flask-Tornado-FastAPI-Sanic-Gin/
首先在学习前我 了解、使用、学习过的语言有
C#
PHP
Java
Javascript
HTML
CSS
Python
HarmonyOS
学习历程
学习平台 https://www.runoob.com/go/go-tutorial.html ,感谢菜鸟教程提供的go语言学习知识
感谢 文心一言 https://yiyan.baidu.com/ 对我提供学习过程中的疑问解答🙂
只记录重点,忽略平台功能开发记录
第一天
学习Go语言的环境安装,编译器配置,使用 GoLand 开始我的第一个go项目
Go的基本语法,数据结构,变量声明、常量、细化的数据类型、运算符、条件结构、循环结构
Go的函数、结构体、Map集合、数据类型转换、异常处理
Go的web框架 Gin 的使用和性能、功能对比
第二天
使用Gin搭建出我Py平台的框架结构
学习MySQL数据库对接,学习连接池->查询->返回数据结构
完成平台认证模块,使用算法重写加密方式和流程
第三天
使用 net/http 库编写一键请求库,将返回内容格式化为固定结构
第二十天
偷懒了20天
Go版secAPI功能已经完成了,就差漏洞利用模块待完善
IP分析模块
属地查询
Whois
经纬度信息
FOFA->Host
恶意IP检测
站点分析模块
基本信息
CMS识别
IP解析
Cert证书解析
ICP备案查询
网安备案查询(本地)
单位备案信息(本地)
封装了自己的request库,自我感觉嘎嘎好用
Go版 secAPI平台上线!
访问地址: https://api.birdy02.com
web地址: https://tools.birdy02.com/
doc地址: https://doc-api.birdy02.com/