01-Web客户端与服务器详解
1、CS与BS
软件使用方式上两种划分
C/S架构
Client/ServerPC客户端、服务器架构
特点:
在服务器当中就主要是一个数据库,把所有的业务逻辑以及界面都交给客户端完成
优点:
较为安全,用户界面丰富,用户体验好
缺点:
每次升级都要重新安装,针对于不同的操作系统开发,可移植性差
B/S架构
Browser/Server
浏览器/服务器架构
特点:
基于浏览器访问的应用
把业务层交给服务器来完成,客户端仅仅做界面的渲染和数据的交换
优点:
只开发服务器端,可以跨平台、移植性很强
缺点:
安全性比较低,用户体验较差
2、Web资源
什么是Web
WEB网页,它用于表示网络主机上供外界访问的资源。
Web资源分类
静态Web资源
指web页面中供人们浏览的数据始终是不变。
动态Web资源
指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同。
web资源存放在哪里
所有的web资源都放在一个web服务器当中
web服务器就是可以供外界访问web资源的一个软件
web资源放到指定的目录当中,就可以通过对应的端口在浏览器当中访问到。
URL地址
协议://主机地址:端口号/资源地址
http://www.itlike.com:80/index.html

3、资源访问流程
客户端
浏览器
Android程序
iOS程序
微信小程序
服务器
php服务器
tomcat服务器
nodeJS服务器...
当我们在浏览器当中访问一个网址的时候,为什么就能看到一个页面
一个网址对应的其实是一个IP地址
一个IP地址对应一台电脑
通过IP地址找到对应的电脑
电脑当中安装的有web服务器,通过端口号找到对应服务器
找到对应服务器,服务器把页面返回给你
这样的一个过程就是http请求的过程
BS结构流程图

请求与响应
请求
把客户端请求发送给服务器
响应
服务器把你要的数据发送给客户端
协议
请求与响应都要一定的格式
约定好客户端以什么样的格式把数据给服务器
约定好服务器以什么样的格式把数据给客户端
这个约定使用的就是HTTP协议
01-Web客户端与服务器详解的更多相关文章
- NGINX高性能Web服务器详解(读书笔记)
原文地址:NGINX高性能Web服务器详解(读书笔记) 作者:夏寥寥 第4章 Nginx服务器的高级配置 4.1 针对IPv4的内核7个参数的配置优化 说明:我们可以将这些内核参数的值追加到Linu ...
- Zookeeper客户端Curator使用详解
Zookeeper客户端Curator使用详解 前提 最近刚好用到了zookeeper,做了一个基于SpringBoot.Curator.Bootstrap写了一个可视化的Web应用: zookeep ...
- 转:Zookeeper客户端Curator使用详解
原文:https://www.jianshu.com/p/70151fc0ef5d Zookeeper客户端Curator使用详解 前提 最近刚好用到了zookeeper,做了一个基于SpringBo ...
- JWT(Json web token)认证详解
JWT(Json web token)认证详解 什么是JWT Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该to ...
- 计算机网络: IP地址,子网掩码,默认网关,DNS服务器详解
楔子: 以Windows系统中IP地址设置界面为参考(如图1), IP地址, 子网掩码, 默认网关 和 DNS服务器, 这些都是什么意思呢? 学习IP地址的相关知识时还会遇到网络地址,广播地址,子网等 ...
- 【转载】Hadoop历史服务器详解
免责声明: 本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除. 原文作者:过往记忆(http://www.iteblog.com/) 原文地址: ...
- 计算机网络: IP地址,子网掩码,网段表示法,默认网关,DNS服务器详解
楔子: 以Windows系统中IP地址设置界面为参考(如图1), IP地址, 子网掩码, 默认网关 和 DNS服务器, 这些都是什么意思呢? 学习IP地址的相关知识时还会遇到网络地址,广播地址,子网等 ...
- 客户端rsyslog配置文件详解
客户端rsyslog配置文件详解 最近再开发一个rsyslog的接收服务端,支持udp,tcp和tls三种协议.所以去仔细研究了一下rsyslog.conf的配置文件,下面来详细说一下. 因为我这儿重 ...
- Java开发之使用websocket实现web客户端与服务器之间的实时通讯
使用websocket实现web客户端与服务器之间的实时通讯.以下是个简单的demo. 前端页面 <%@ page language="java" contentType=& ...
随机推荐
- Sublime Text几款常用插件及用法(前端)
一.Sublime3下载 百度搜索sublime text3,出现如图: 2.然后点击进去下载: 或者https://pc.qq.com/detail/0/detail_10140.html这里下载 ...
- python中多线程,多进程,多协程概念及编程上的应用
1, 多线程 线程是进程的一个实体,是CPU进行调度的最小单位,他是比进程更小能独立运行的基本单位. 线程基本不拥有系统资源,只占用一点运行中的资源(如程序计数器,一组寄存器和栈),但是它可以与同属于 ...
- PigGo+Github图床,编写本地markdown
平时用markdown做笔记比较多,比较正式完整一点的笔记会用CmdMarkdown,编写过程贴图比较方便,但是有时候需要做本地的笔记,会用typora,typora虽然好用,但是贴图比较麻烦,这里可 ...
- Java类型简介
1 java基本数据类型 1.1 基本数据类型 java的基础数据类型有多少个,每个在内存的分配是多少呢? 类型 分配字节 byte 1 short 2 char 2 int 4 long 8 ref ...
- 工具软件推荐——GifCam
博文里面的动态gif图片都是使用这款软件录制的,可以选择帧率,清晰度,并且编辑每一帧的图片,非常好用,特此推荐~ 注意: GifCam 是一款免费绿色的软件. 大家尽量在官方下载 下载地址. 最新的版 ...
- css hack 汇整
针对Chrome和Safari等Webkit核心浏览器的CSS hack代码: @media screen and (-webkit-min-device-pixel-ratio:0) { …… } ...
- php 使用 rabbitmq
1,配置好rabbitmq 服务器 (参照 http://www.cnblogs.com/spicy/p/7017603.html)(我是linux) 2,新增了一个用户 并点击该用户 增加权限如下
- python-广播
#!/usr/bin/python #coding=utf-8 #广播端 import sys,socket import time s=socket.socket(socket.AF_INET,so ...
- WPF Convert使用
在存在基本数据缓存时,可以传入一个数据库中的数据唯一标识码,然后利用自己编写的Convert类,这个Convert类必须实现IValueConverter接口,进行转换,在进行转换的过程中,可以从基本 ...
- Struts2 ongl内存结构
valuestack是OgnlValueStack的实现,而OgnlValueStack是基于ValueStack的实现 valuestack的内存结构为: 里面主要的为:context和root r ...