02 / Observe · 复盘

从小程序到安全驱动的 AP 应用开发复盘

· 8 min · 网络安全 / Java / Python

最近,我参加了一场开发类比赛。

最开始,我满怀期待、斗志满满,打算从零开始做一款小程序。可真正动手后才发现,事情远没有想象中顺利——需求不断变化、思路逐渐偏离最初的想法,越做越失落,甚至一度怀疑自己能不能完成作品。

更棘手的是,开发过程中遇到了各种平台限制,很多我想实现的功能根本无法落地。眼看着比赛即将结束,我在最后几天做了一个重要决定:放弃小程序,重新转向 AP 应用开发

在重构项目的过程中,我突然想通一件事:

任何产品,都必须突出核心主题;而我平时对网络安全特别感兴趣,那我的作品,为什么不能把「安全」当成核心亮点?

于是,我开始接触学习网络安全相关知识,也真正意识到:一个让用户放心的产品,安全永远是底线。

一、为什么我从 Python 转向 Java

最开始,我用的是 Python。上手快、写爬虫方便、效率高,我也确实用它完成了数据爬取、接口调用等功能,学到了很多实用技巧。

但随着深入了解安全知识,我发现一个关键问题:Python 的语言安全性相对较弱。

而我的项目需要对外提供服务,还要接入域名、服务器、AI API,涉及用户数据与接口调用,安全绝对不能妥协。所以我最终决定改用 Java 编写后端。

这次技术选型的转变,让我第一次真正理解:开发不只是实现功能,更是对安全、稳定、用户信任的负责。

二、网络安全到底有多重要

这次开发中,我接触了很多以前不了解的安全知识点:

1. API 安全

我接入了 AI 接口,才知道 API 如果不加验证、不加签名,很容易被恶意调用,造成费用损失、数据泄露。

// 简单的 HMAC 签名校验
String sign = HmacSHA256.sign(payload + timestamp, secretKey);
if (!sign.equals(request.getHeader("X-Sign"))) {
    throw new UnauthorizedException("Invalid signature");
}

2. 数据传输安全

用户数据在网络上传输时,如果不加密,就像明信片一样,任何人都能看到。所以必须使用 HTTPS、加密算法。

3. 后端权限控制

没有权限校验的接口,任何人都能随意篡改、删除数据。这就是为什么企业项目必须做登录验证、身份认证、权限隔离。

4. 爬虫与反爬

我用 Python 写过爬虫,也明白爬虫如果滥用,会对别人服务器造成伤害;反过来,自己的服务器也要做好反爬防护。

三、项目落地

确定方向和技术栈后,我开始真正把项目跑起来:

每一步都花了大量时间,也踩了无数坑。但正是这些琐碎、枯燥、反复调试的过程,让我从一个只会写点小代码的新手,慢慢变成能独立完成完整项目上线的开发者。

四、最后

回头看这次竞赛经历:

网络安全不是附加题,而是所有产品的必修课。

这不仅是一次比赛,更是我技术道路上的重要起点。