名词百科
什么是前端与后端?
一句话定义
前端是用户直接看到并操作的界面部分,运行在浏览器或客户端中;后端是运行在服务器上的业务逻辑与数据存取部分。两者通过接口通信。
它到底是什么
分工的判据是代码在哪里运行:跑在用户设备上的就是前端,跑在服务器上的就是后端。这也决定了两者的安全边界——前端代码用户能看到、能修改,后端代码不能。
因此有一条铁律:所有校验与权限判断都必须在后端。前端做的校验只是体验优化,挡住的是误操作,不是恶意请求。
怎么运作的
前端:负责界面渲染、交互响应、数据展示与表单收集。技术栈通常是 HTML/CSS/JavaScript 加框架,构建后是静态文件,可放 CDN。
后端:负责业务规则、权限校验、数据读写、第三方调用。对外暴露接口,对内操作数据库与缓存。
通信:前端通过 HTTP 请求调用接口,后端返回数据。接口的字段、错误码构成双方契约,变更需要同步。
职责划分的常见误区:把价格计算、优惠规则放到前端,会导致篡改;把大量数据过滤放到前端,会拖慢加载。计算与筛选应尽量下沉到后端。
容易混的几个概念
- 客户端与服务端:更宽的说法,前端是客户端的一部分。
- 全栈:一个人同时能承担前后端工作。
- BFF:为前端定制的后端中间层,仍属后端范畴。
- 服务端渲染:前端代码在服务端执行,本质是前端技术的运行位置变化。
常见问题
前端能直接连数据库吗?
不能。数据库凭据放在前端等于公开,任何访问者都能拿到。所有数据访问必须经由后端接口,由后端校验身份与权限。
前后端分离后谁来保证接口一致?
靠契约文档与自动化校验。常见做法是先定义接口规范,再各自开发;接口变更时同步更新文档,并在联调前用 Mock 数据对齐。
E 后端架构 · 同组词条
APIAPI(Application Programming Interface,应用程序编程接口)是系统之间约定好的调用方式:调用方按约定传入参数,服务方返回结果。它是软件之间协作的接口。RESTfulRESTful 是一种以资源为中心的接口设计风格,用 HTTP 方法与状态码表达操作;GraphQL 是一种查询语言,由客户端声明需要哪些字段,服务端一次返回。数据库数据库是结构化存储与管理数据的系统。MySQL 是关系型数据库,用表与行组织数据、支持事务;Redis 是键值型内存数据库,常用于缓存、计数与队列。缓存缓存是把访问频繁的数据临时存放在更快的存储介质中,以减少对慢速数据源的访问。常见位置有浏览器、CDN、应用内存、Redis。消息队列消息队列是用于在系统之间异步传递消息的中间件:生产者发送消息,消费者按自己的节奏处理。它解决的是解耦、削峰与异步三个问题。微服务微服务架构是把一个应用拆成多个独立部署、独立运行的小服务,各自负责一块业务能力,通过接口或消息通信。每个服务可单独开发、发布和扩容。业务中台业务中台是把多个业务线共用的能力(用户、商品、订单、支付、营销)抽取成统一服务,供各业务线调用的架构思路。它强调的是能力复用,而不是技术统一。多租户多租户架构是一套系统同时服务多个客户(租户),各租户的数据相互隔离、配置互不影响。它是 SaaS 能把成本压低的根本原因。