道理我都懂,但 go embed 究竟该怎么用?

Go 1.16 发布! 就在前几天,Go 1.16 赶在二月的末尾发布了。 对于这个版本我期待了很久,因为官方终于从语言层面解决了静态文件嵌入的问题—— 加入了 go embed。从此,像 go-bindata、statik、togo 等库都将退出历史的舞台。 同时 Go 1.16 配套的加入了 io/fs 标准库,提供了实现文件系统的接口。同时对 http、embed、os 标准库都加入了对 f

Elaina —— 基于 Docker 的远程代码运行器

文章头图 PixivID: 85439235 @yuurei0 这几天过年,难得能闲下来做点自己的事情。前一阵子事情挺多的,博客更新也断了将近三个月。 之前在 LeanCloud 的官网看到他们有一个使用各种语言调用 SDK 的示例代码。 不过这些代码并不能实时运行。我又想起以前写 Apicon 时,曾有在 API 详细页加入可实时运行的示例代码的想法。那么说干就干,写一个实时代码运行器吧! 就这

一个实时协作文档的诞生

用户管理凡是企业都是需要的 一直以来,协会打比赛时所使用的协作文档都是 HackMD,这是一个使用 NodeJS 编写的可自主部署的在线 Markdown 协作应用。用了这么多年了,HackMD 的一些弊端和痛点也暴露了出来。 * 没有完备的用户管理 * 文档不能细致的分类分组 * 在线编辑器有时候光标显示错误 … 因此,我萌生了自己造轮子写一个协作文档的想法。这是今年暑假一拍脑袋做的

CyBRICS 2020 Web Writeup

有一段时间没打比赛了。前几天是 XCTF 联赛的 CyBRICS 2020,不得不说国外战队的比赛体验真的很好,平台好看,题目不说难度,至少看得出是花心思了的。最后协会也是拿了中国第三 世界第七的成绩 👍👍👍 这里记录一下 Web 题,当做日后备忘。总得来说 Web 不算太难,考得知识点也不是很广,感觉学不到太多东西。 Hunt 挺有创意的签到题。 F12 Console 建几个五个 reCAPT

NekoWheel 猫轮 —— 一起来愉快的造轮子吧!

NekoWheel 想法的诞生 之前在博客中提到过,自己这段时间以来一直都挺丧的。知道每天效率都很低,但是又没啥干劲;有时又会因为一个小问题折腾一整天,结果发现又绕回到了原点。 因此想着去做些什么让自己能够跳出这个循环,至少能让我有兴趣有动力去写一些感兴趣的东西,但同时又能接触些新玩意儿,增长些经验。 在朋友圈经常看到以前的同学在发自己的匿名问题箱,仔细想了下这东西好像也不难写,不如我花点时间简单

关于我刚开始学着给程序写测试时的一些胡思乱想

我把 Cardinal 开源了 就在一周前,我把写了一个寒假的 CTF AWD 平台 Cardinal 开源了。╰(º▽º)╯ 因为项目是放在协会的 GitHub 组织下的,所以要感谢 @Aklis 和 @Li4n0 两位学长的帮忙。 卑微胖茄求各位赏个 star:https://github.com/vidar-team/Cardinal 我的想法是今后将 Cardinal 当做一个长期维护的开

写了个小玩意来展示我做的小玩意(禁止套娃

HGAME 完结撒花~ 长达 4 周的 HGAME 2020 结束啦!因为是放寒假,所以每天几乎都睡到 12 才醒,醒来一看手机消息总会有几个学弟来问题。 陆陆续续下来,协会的招新工作也差不多接近尾声,一些有潜力的新生后面也要开始关注起来了。 在准备 HGAME 的空余时间呢,我依旧是在瞎写东西。Week2 在老家的时候把上学期开的 Pie-Baker 这个坑填了不少,估计以后可以写篇文章介绍一下

HTTP 测试——七牛 httptest 测试工具包使用小结

新年快乐 有一段时间没更博客了呀~ 一月初的时候是在忙着准备期末考试,今年很幸运一门都没有挂科。最没底的概率论被老师给捞过了,要知道这课我就只去了两次。计组很意外的期末考试拿了 84 的分数,不枉我每节课都坐第一排认真听讲哈哈。加上这学期省赛一等奖的绩点加成,下学期绩点可以有 4.1,奖学金应该是稳了的。 同时在期末考完毛概后,想稍稍放松一下,居然给 BiliSRC 交了两个高危。直接 8k 入账

Vue 编译后该如何方便地嵌入 Go?

有一段时间没写点东西了。前一阵子事挺多的,又是重构助手阳光长跑后端,又是准备协会 Web 培训,上周又是 D^3CTF 线下。周五周六连续熬了两个通宵处理各种突发的问题,直到周日才在场地旁的沙发上睡了六个小时。 原本想写篇文章复盘一下 D^3CTF 的,但是思来想去好像都是些零零散散的琐事,没有可以单独拿出来讲的。还有就是些技术“机密”,不太好拿来公开分享哈哈。 今天难得有空在期末复习之余写了下自

关于我用 Go 写 HTTP(S) 代理这档事

起因是氪不起曲包 我很喜欢的音游——Muse Dash,在 10 月 28 日的时候发布了万圣节更新。新的游戏更新里加入了“周免”机制。即每周都会有一首付费曲包里的歌曲供玩家免费试玩,这样玩家就会有动力氪金买曲包了。 但是我这阵子手头一直不宽裕,比赛的钱最迟有要到下学期才发的…… 助手那边最近也没啥锅让我写。氪金当然是不可能氪金的啦。 不过自“周免”机制推出后,我就隐隐有一

Apicon 背后都用到的哪些技术?

Apicon 的来源 大概是高二的时候,因为 WordPress 的关系,我接触到了 Web API。进而了解到了 Ajax、RESTful 等概念。当时百度有一个 API Store,上面收录了大大小小各种各样的 API。从天气查询到语音识别,免费并配有详细文档以及不同语言的使用示例。 当时这对我来说真的是个宝库。与此同时,我在 GitHub 上也找到了个人整理的 QQ 音乐、网易云音乐、bil

总结一下最近 beego 开发遇到的坑

最近一直在写 Apicon 的主站,目前虽然还有很多功能没有写完,不过先配好了 Drone 直接上线了。 因为我的前端实在是太菜了,Vue 写到后面暴露出了很多问题;索性就放弃了之前定下的前后端分离,直接用 beego 开始写 MVC 了。 推翻之前所做的,确实需要一定勇气。不过就目前的情况看来,我还是挺满意这个决定的。 期间遇到了不少问题以及坑,这里总结一下吧。 自定义错误页 自定义诸如 404

拉取、编译、部署,无人机升空!

编译型语言,就需要自动部署 我记得上学期刚注册助手 Gita 时,我还打趣地问过部长,助手什么时候上 CI / CD? 当时部长说快了,这学期就上。 现在助手可以说每个项目完成后,都会使用 Drone 实现持续交付 / 持续集成。 对于前端来说,因为助手主要是用 Vue 做单页应用,推送代码到 Gitea 上后,Drone 会使用 Vue CLI 对项目进行编译,之后将编译好的前端静态文件放进一个