web 技术中的前端和后端是如何交互的

前言

由于本人并不是从事 web 开发工作,本文整理自个人对 web 技术的理解,部分内容来自网络,如果有什么错误的地方,欢迎专业人士指正。

1 现代 web 技术全景图

在互联网发展的早期(上世纪80年代末90年代初),后端直接生成页面内容,没有前端展示,甚至没有浏览器。如今,web 技术发生了天翻地覆的变化,各种开发框架、编程语言、开发模式层出不穷,令人眼花缭乱。然而,web 技术所有的演进都是围绕前端、后端、前后端交互展开的。

在这里插入图片描述
上图是现代 Web 技术的一个全景图。client 端有浏览器、移动 APP、微信小程序,web server 上有基于 vue/react 的前端代码,如 html、js、css 等,也有基于后端的框架 apache/tomacat的处理程序,还包括数据库。同时,web server 还会去调用远端服务。

2 web 后端的功能

web 前端的功能相信大家都很清楚了,简单来说,就是负责页面展示。那 web 后端又是干嘛的呢?

根据不同的请求信息做出不同的响应。具体来说,当用户触发某个行为后,客户端会通过 http/https 请求,和服务器建立连接、发送请求,往往这个请求首先会被连接到 LB(负载均衡上),LB 根据配置,将请求转发到内部的 API 服务上。这些 API 服务,根据不同的业务逻辑请求其他服务(service),这些服务各司其职,例如读写某 Mysql 表、读写缓存、甚至请求搜索引擎来完成相应的任务。而 API 服务在完成相应的流程后,也会将数据返回给客户端,客户端根据前端逻辑完成相关的展示。

web 访问的具体流程:

1)connection:建立连接
在这里插入图片描述

ip + port <—> port + ip = socket

2)http parser:后端解析浏览器发来的 http 请求

3)router:路由

把不同的 request 转发给不同的 responser 处理

4)middleware:中间件
在这里插入图片描述

tomcat 作为 web 服务器(这里指的是软件)包含两个模块,分别是 connector 和 container. connector 的核心功能有两个:

  1. 监听网络端口,接收和响应网络请求

  2. 网络字节流处理

3 web 前后端是如何交互的

首先我们要了解一些概念。

ngix、apache:最早的 web server .

tomcat 是 apache 的一个扩展,可以用来支持 jsp. SpringBoot 里一般内嵌了 tomcat,可以一键启动。

jsp:Java Server Pages,是一种动态网页开发技术。它使用 jsp 标签在 html 网页中插入 java 代码。

php:hypertext preprocessor “超文本预处理器”,它是一门脚本语言,apache 是专门执行 php 的容器,也就是说,php 在 apache 里才能跑起来。

html、css、js 都是在浏览器中渲染执行的,确切说是浏览器内核做的事,包括渲染引擎和 JavaScript 引擎。

如果是传统的 jsp + jQuery(javascript + Query,轻量级 js 库),源代码直接发送到浏览器端执行。

如果是现代 vue、react 等框架,一般都会使用 webpack 构建工具,它会做一些处理,例如 css 预处理器的解析、css 前缀补全、es6+ 新语法向老语法的转换等操作,都是在服务器 node.js 环境中执行的,编译打包后方可在浏览器端执行。

vue 也是个 js 库,并且不依赖别的 js 库,跟 jQuery 差不多。vue 的核心库只关注视图层(下文会介绍),非常容易与其它库或已有项目整合。

js 的解释执行由宿主环境负责(如浏览器、node.js)

接下来,以用户提交用户名、密码的登陆页面为例解释一下 web 前端、后端的交互流程。

当前网页的 html 文件如下,浏览器发出一个 GET 请求:

<!DOCTYPE html>
<html>
最低0.47元/天 解锁文章
Web常见的几种前端后端交互数据的方式---servlet表格--layUI表格--thymeleaf表格
唐傘皮
07-05 1516
如果傘皮不能用代码改变世界,那就改变自己就好了~ 请把您的赞留给大神们,把下次一定留给俺,俺下次一定好好写(^ 狗头 ^)~ 文章目录一:servlet+jsp传数据(1)servlet代码(2)jsp代码(3)效果二:layUI传数据并实现表格数据填充(1)表格代码(2)JavaScript代码(3)后台json代码(4)效果三:thymeleaf传数据并实现表格数据填充(1)thymeleaf的引入(2)后台向HTML传数据(3)HTML数据处理 一:servlet+jsp传数据 (1)servle.
javaWeb前后交互(小白篇,大神请自动忽略)
weixin_45360456的博客
08-15 567
这是最简单的前后台交互,首先在这里默认你知道什么是Jsp、mysql、servlet、Tomcat服务器。 一、搭建环境 创建动态web项目,File—> New—>Dynamic …… 然后Finish完成,动态web项目创建成功。 二、导入jar包 因为要连接数据库,因此要导入mysql驱动包。一定要刚开始就导入,因为有时候写项目时,刚开始没导包,忘记了,最后怎么都连接不...
web 前后台数据交互的方式
热门推荐
walkingmanc的专栏
05-25 7万+
web开发,很重要的一个环节就是前后台的数据的交互,数据从页面提交到contoller层,数据从controler层传送到jsp页面来显示。这2个过程数据具体是如何来传送的,是本节讲解的内容。    首先说一下数据如何从后台的contorller层传送到页面jsp上。 如上图,在使用struts的情况下上图就是我们在jsp页面上能获取到的对象,我们想将后台数据传到j
【学习笔记】Web前端后端数据的交互
2401_84149996的博客
04-13 769
相信大家都在一些网站上面经历过注册和登录过,当我们在登录的时候点击提交那个按键的时候,此时网站其实就首先对后端发送数据,然后后端程序会读取数据库的数据并判断我们的账号和密码是否正确,这个地方就是通过前端把数据发送到后端,这也是我们今天的主要内容。本篇博客简单记录使用Java和HTML5,用前端页面发送数据到后端接受并处理!也很希望本篇博客能带给大家帮助!!!使用工具🚄完成HTML代码在写前后端交互的时候,首先我们肯定需要有我们的前端页面。现在我们的前端就默认HTML5。
Web后端交互
最新发布
hummhumm的专栏
04-27 1515
Fetch API:现代浏览器原生提供的更强大、更灵活的请求API,用于替代传统的XHR(XMLHttpRequest)。- 接口定义:前端后端通常会约定一套API接口规范(如OpenAPI、Swagger等),明确请求路径、HTTP方法、请求/响应数据格式(如JSON)、错误处理等,以确保双方对接顺畅。- POST请求:对于包含敏感信息或大量数据的表单提交,通常使用POST方法。前端后端通过上述技术与协议进行交互,实现数据请求、提交、实时更新等功能,共同构建功能完备、响应迅速的Web应用程序。
前端后端交互方式
zengliguang的专栏
01-20 2025
前端后端交互一般通过HTTP请求和响应来进行。前端通过浏览器向后端发送请求,后端收到请求后进行处理并返回响应,前端接收响应后进行相应的处理。
后端交互(小白教学)
一枚数学专业的小码农的博客
10-24 4万+
后端交互小白教学,超详细
Web前端开发之前后端交互01——客户端和服务器
DRLDER的博客
04-05 1934
目录 客户端及服务器: URL地址: 客户端与服务器的通信过程: 网页如何请求数据:​ 从这里开始我们将要讲述全新的章节,前后端交互。 首先我们要了解什么是客户端和服务端。 客户端及服务器: URL地址: 其称为统一资源定位符,用于标识互联网上每个资源的唯一存放位置,浏览器只有通过URL地址,才能正确的定位资源的存放位置,从而成功访问到对应的资源。 而其组成部分如下: 客户端与服务器的通信过程: 网页如何请求数据: 为什么要学Ajax? ...
1. Web前端后端的关系一目了然
凤文Sharing的博客
08-31 2075
1.1Web开发 Web开发主要分为前端开发和后端开发两部分,前端更侧重于页面的展示与用户的交互后端更侧重于数据的处理于服务的访问。 而HTML语言就属于前端的开发范围。 1.2 前端开发 前端指的是直接于用户接触的网页,网页上通常有HTML、CSS、Javascript等内容。 1.3 后端开发 后端指的时程序、数据库和服务器层面的开发。 ...
web大作业--前端后端,数据库交互
04-30
记录一下web大作业
web前端交互
12-17
该demo演示web端与前端的数据交互,demo比较简单,建议初学者下载
Web后端完整交互原型
05-29
新版共包含了常用组件、信息输出、信息输入、信息反馈、综合系列、页面交互等6种元件分类,这些分类由近百款元件类型和上千个独立元件组成。相比于旧版本,新版包含了更加丰富的元件类型和业务组件,并且去掉了一些实用性不高的元件。同时,新版应用了全新的设计风格和配色方案,整体使用较为安全的蓝色作为主色调,同时简化了相关元素的配色,调整起来也会更加方便。
web前端+后端课件
01-16
包括前端后端的课件,从简单的html到复杂的servlet,需要的进。
Web前端、C#后端、Mysql数据库交互
10-10
Web前端使用JavaScript进行开发,利用Ajax技术后端通信,C#后端采用Asp.net的ashx处理前端请求,数据库端使用Mysql数据库,C#后端可以与数据库直连。
初识前端后端UI交互,初学者必看
08-25
1.定义前端后端 2。前后端开发任务量分析与比较 3.前后端开发模式探讨 4.web UI技术综述
d2-admin前端后端代码
09-06
功能包括用户,角色,菜单管理, 实现了RBAC模型权限控制。 d2-admin-web d2-admin前端框架 d2-admin-api springboot基于restful api接口规范框架 数据文件在d2-admin-api/db目录下
后端交互的几种方式
weixin_46174785的博客
10-10 1万+
后端交互的几种方式 前端开发只做两件事: 1、 创建页面解构; 2、数据交互 数据交互尅分为两: 1、后台技术 2、从后台拿数据 1、 利用cookie 前端通过登录来存储cookie 后端可以通过 req.cookies() 来获取存储的cookie信息 2、 利用ajax node.js 之前常用的前后端交互都利用ajax和JQ已经封装好的ajax;ajax ;ajax;post; $getJSON 通过创建一个XMLhttpRequest对象,来进行前后端交互; node.js
基于web服务器的前后台交互程序(基于C语言)
q544344318的博客
10-27 2877
本节设计一个按键(button)和文本框(Text),web页面上按键点击一下,文本框显示“Helloword!”的字符,其html语言用于web网页的设计;javascript语言用于与C语言后台程序交互和显示控制;基于C语言的后台程序处理接收命令,并显示输出。
前端页面和后端服务的数据交互web作业
05-25
好的,我可以为您提供一些关于前端页面和后端服务的数据交互的参考代码和解释。 首先,在前端页面,我们可以使用 JavaScript 发起 HTTP 请求来向后端服务请求数据。常见的方法有使用原生的 XMLHttpRequest 对象或者使用现代的 fetch API。以下是一个使用 fetch API 发起 GET 请求的示例代码: ```javascript fetch('/api/data') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error(error)); ``` 这段代码会向 URL 为 `/api/data` 的后端服务发起一个 GET 请求,并且将响应数据解析为 JSON 格式,最终将解析后的数据输出到控制台。如果请求失败,则会输出错误信息。 接下来,在后端服务,我们需要编写代码来处理这个请求并且返回相应的数据。以下是一个使用 Node.js 和 Express 框架编写的示例代码: ```javascript const express = require('express'); const app = express(); app.get('/api/data', (req, res) => { const data = { message: 'Hello, world!' }; res.json(data); }); app.listen(3000, () => { console.log('Server is running on port 3000'); }); ``` 这段代码会创建一个 Express 应用程序,并且监听端口 3000。当收到 URL 为 `/api/data` 的 GET 请求时,它会返回一个包含消息 "Hello, world!" 的 JSON 对象。 至此,我们已经完成了一个简单的前端页面和后端服务的数据交互示例。当您在浏览器访问前端页面并且执行上述 JavaScript 代码时,它将会向后端服务请求数据并且将数据输出到控制台。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • C++vector清空元素的3种方法 10340
  • 分布式技术 2:详解 Paxos 共识算法原理 7624
  • C++11 lambda表达式能带来哪些好处? 6080
  • IP数据报在网络中为什么要分片和重组 4868
  • web 技术中的前端和后端是如何交互的 3938

分类专栏

  • 软件架构与设计 付费 14篇
  • C++ 编程语言知识与应用 付费 80篇
  • AI 付费 21篇
  • 性能优化 付费 8篇
  • LINUX 付费 12篇
  • PYTHON 7篇
  • GIT 4篇
  • WEB技术 2篇
  • JAVA 8篇
  • 网络安全 7篇
  • 编程工具 3篇
  • CPU 4篇
  • 计算机网络 3篇
  • 个人感悟 3篇
  • 数据结构和算法 27篇
  • 编译器 6篇
  • GCC 5篇
  • 开发者测试 3篇
  • 大数据处理 9篇
  • 设计与重构 11篇
  • 计算机组成原理 2篇
  • 软件工程与技术 2篇
  • UML 2篇

最新评论

  • static_cast, dynamic_cast, const_cast, reinpreter_cast的区别?

    苏坡曼、: 没写完啊 哥

  • C++vector清空元素的3种方法

    高达驾驶员小酱油: 简单明了,暴力,哈哈表情包

  • 分布式技术 3:高并发系统的设计思路以及C++ 实现

    自由技艺: 关注我知乎同名账号

  • 分布式技术 3:高并发系统的设计思路以及C++ 实现

    dkjwwnkksd: 很有收获

  • map初始化几种方式

    hellopbc: 列表初始化报错

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • pandas中文手册
  • Github 本地合并 (merge) 他人提交的 pr
  • C++ 段错误定位
2023年1篇
2022年15篇
2021年65篇
2020年160篇
2019年5篇

目录

目录

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自由技艺

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

PHP网站源码垦利百度网站优化排名公司济南网站优化按天收费推荐沧州企业网站建设价格南山关键词按天扣费推荐泰安SEO按天扣费哪家好通辽网站搭建哪家好哈尔滨网站优化按天收费推荐龙华阿里店铺托管哪家好黄冈外贸网站建设多少钱德阳网站制作报价张北网站关键词优化晋中网站优化排名多少钱营口如何制作网站报价济南网站开发白银百度seo阿里网站设计多少钱咸阳网站优化排名报价兴安盟企业网站制作公司拉萨百度网站优化排名报价邯郸网站改版价格衡水网站搭建推荐丹东企业网站改版哪家好朔州网站改版报价中山网站优化排名报价湛江网站搜索优化报价绥化阿里店铺运营公司白银网站排名优化哪家好临沂企业网站设计推荐酒泉百度竞价天门网站改版歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化