news 2026/4/16 16:13:38

38、REST API 开发与单页应用解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
38、REST API 开发与单页应用解析

REST API 开发与单页应用解析

1. API 认证与安全

为了将应用暴露给其他程序,使用 API 密钥认证是一个不错的选择,但在配置 Spring Security 时,需要为 API 密钥进行不同且更快的凭证检查,与普通用户名和密码的加盐哈希方法不同。具体操作如下:
1.创建认证管理器:为基本认证创建一个单独的认证管理器,用于验证 API 密钥。
2.配置认证 Bean:配置基本认证 Bean,使其使用自定义的认证管理器。

为了防止数据库被攻破时 API 密钥泄露,对 API 密钥的哈希值进行比较是个好主意。使用简单的 SHA - 256 哈希(无盐且仅一次迭代)速度快,且由于 API 密钥是随机生成的,彩虹表无法帮助攻击者逆向工程密钥。

采用 API 密钥方法还意味着要添加管理用户界面元素,用于生成 API 密钥并提供给客户端。同时,应考虑添加撤销和重新生成 API 密钥的功能,以防密钥泄露。

2. API 版本控制

当 API 拥有一定用户基础后,在不破坏现有客户端的前提下对 API 进行演进就成为首要考虑的问题。

2.1 版本控制的原因

在资源中添加数据而不改变现有结构通常不会有问题,因为大多数 JSON 和 XML 解析会忽略额外数据。但当客户端使用模式时,修改数据结构就变得困难,可能会破坏现有客户端。例如:

<post> <content>Pilates
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:19:46

csp信奥赛C++标准模板库STL案例应用9

csp信奥赛C标准模板库STL案例应用9 map实践 题目背景 出题是一件痛苦的事情&#xff01; 相同的题目看多了也会有审美疲劳&#xff0c;于是我舍弃了大家所熟悉的 AB Problem&#xff0c;改用 A-B 了哈哈&#xff01; 题目描述 给出一串正整数数列以及一个正整数 CCC&#…

作者头像 李华
网站建设 2026/4/15 14:32:09

解锁.NET工作流开发:Workflow Core引擎实战指南与性能深度解析

解锁.NET工作流开发&#xff1a;Workflow Core引擎实战指南与性能深度解析 【免费下载链接】workflow-core workflow-core: 一个轻量级的、可嵌入的工作流引擎&#xff0c;针对.NET Standard设计&#xff0c;适用于需要跟踪状态的长期运行过程。 项目地址: https://gitcode.c…

作者头像 李华
网站建设 2026/4/15 12:44:48

ADBKeyBoard虚拟键盘终极指南:解锁Android自动化测试新境界

ADBKeyBoard虚拟键盘终极指南&#xff1a;解锁Android自动化测试新境界 【免费下载链接】ADBKeyBoard Android Virtual Keyboard Input via ADB (Useful for Test Automation) 项目地址: https://gitcode.com/gh_mirrors/ad/ADBKeyBoard ADBKeyBoard作为基于Android Deb…

作者头像 李华
网站建设 2026/4/16 15:29:38

45分钟精通Wiki.js开发:从零搭建到深度调试实战指南

45分钟精通Wiki.js开发&#xff1a;从零搭建到深度调试实战指南 【免费下载链接】wiki- Wiki.js | A modern and powerful wiki app built on Node.js 项目地址: https://gitcode.com/GitHub_Trending/wiki78/wiki- 还在为团队知识库搭建而烦恼吗&#xff1f;想要快速掌…

作者头像 李华
网站建设 2026/4/12 11:05:49

QtScrcpy鼠标点击失效全面修复指南:从问题诊断到完美解决

QtScrcpy鼠标点击失效全面修复指南&#xff1a;从问题诊断到完美解决 【免费下载链接】QtScrcpy Android实时投屏软件&#xff0c;此应用程序提供USB(或通过TCP/IP)连接的Android设备的显示和控制。它不需要任何root访问权限 项目地址: https://gitcode.com/barry-ran/QtScrc…

作者头像 李华
网站建设 2026/4/13 9:57:52

ComfyUI-Ollama进阶指南:打造高效AI创作工作流

ComfyUI-Ollama进阶指南&#xff1a;打造高效AI创作工作流 【免费下载链接】comfyui-ollama 项目地址: https://gitcode.com/gh_mirrors/co/comfyui-ollama 还在为AI创作工作流中的技术门槛而烦恼吗&#xff1f;今天我将带你深入探索ComfyUI-Ollama的强大功能&#xff…

作者头像 李华