HTTP协议-----------应用层协议

2023-11-05

一  引言:

协议:就是一种约定,双方为了更好的完成某项活动,而一致遵守的约定。

应用层协议:我们程序员自己定义的协议,最常见的应用层协议是http协议

二  URL和URI的区别与联系:

URI统一资源标识符:用来唯一的标识一个资源 ,但不能定位

URL统一资源定位符:是一种具体的URI,即用一个URL可以标识一个资源,而且还指明了如何定位这个资源。

三  初识URL

以上是一个完整的URL,实际中我们见到的把登录信息,端口号都省略了。

二   http协议讲解(http底层是基于TCP保证可靠性)http是基于请求和响应的

http协议:请求和响应都是纯文本协议,不安全。

https协议:数据传输的时候进行了加密。

http请求报文分为三到四部分:

http响应报文:由四部分组成

三   HTTP常见的状态码(面试题)

1xx    信息性状态码     接受的请求正在处理(不常见)

2xx    成功状态码      200 请求成功

3xx    重定向状态码   302呼叫转移,访问a相当访问b

4xx    客户端错误状态码    404资源不存在   402没权限Forbidden

5xx    服务器错误状态码      501请求未完成  504网关超时

四  你还了解哪些应用层协议

DNS:域名解析协议

FTP:文件传输协议

telnet:远程终端协议

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTTP协议-----------应用层协议 的相关文章

  • 为什么使用signalfd无法捕获SIGSEGV?

    我的系统是ubuntu 12 04 我将示例修改为man 2 signalfd 并添加sigaddset mask SIGSEGV 在示例中 但我无法得到输出SIGSEGV被生成 这是一个错误吗glibc 源代码片段如下 sigemptys
  • 命名互斥体的 Mono 替代方案

    在 Windows NET 上 命名的互斥体可用于同步多个进程 不幸的是 Mono 在 Linux 上不太支持这一点 他们的发行说明 http www mono project com Release Notes Mono 2 8 Shar
  • 有没有办法提高linux管道的性能?

    我正在尝试使用 64 位将超高速数据从一个应用程序传输到另一个应用程序CentOS http en wikipedia org wiki CentOS6 我使用以下方法进行了基准测试dd发现阻碍我的是管道而不是程序中的算法 我的目标是达到
  • BeagleBone Black 如何用作大容量存储设备?

    是否可以使用 BB 作为大容量存储设备 我希望将其连接到可以从 USB 连接 例如 USB 闪存驱动器 读取文件的音频播放器并充当包含一个特定文件夹的数据存储设备 及其子文件夹 从文件系统 如果可能 在连接到开发板的闪存驱动器上 正如设备规
  • grep 彩色线条

    我编写了一个简单的 PHP shell 脚本 它解析文件并输出某些元素 它产生大量的输出 采用不同的 bash 颜色 绿色表示正常 黄色表示警告 红色表示错误等 在开发过程中我想过滤掉一些行 例如 所有包含红色文本的行 我可以使用grep
  • 通过名称获取进程ID

    我想在 Linux 下获得一个给定其名称的进程 ID 有没有一种简单的方法可以做到这一点 我还没有在 C 上找到任何可以轻松使用的东西 如果追求 易于使用 char buf 512 FILE cmd pipe popen pidof s p
  • Linux 中的 Windows NAmed Pipes 替代品

    我们正在将现有的 Windows 代码移植到 Linux 我们使用 ACE 作为抽象层 我们使用 Windows 命名管道与多个客户端进行通信并执行重叠操作 linux 下这个相当于什么 我检查了linux命名管道 FIFO 但它们似乎只支
  • 打印 STDOUT/STDERR 并将它们写入 Bash 中的文件?

    有没有办法让 Bash 将 STDOUT STDERR 重定向到文件 但仍然将它们打印到终端 这会将 STDOUT 和 STDERR 重定向到同一个文件 some command 2 gt 1 tee file log Example to
  • 每个虚拟主机的错误日志?

    在一台运行 Apache 和 PHP 5 的 Linux 服务器上 我们有多个带有单独日志文件的虚拟主机 我们似乎无法分离 phperror log虚拟主机之间 覆盖此设置
  • Linux 上的“软/硬 nofile”是什么意思

    当我尝试在RedHat EL5上安装软件时 我得到了错误 软 硬nofile的期望值是4096 而默认值是1024 我设法增加了这个数字 但我不知道参数是什么 他们指的是软链接和硬链接吗 我改变的方法是 a 修改 etc security
  • PHP mail() 函数不发送邮件

    我有一个小问题 我正在使用一个工作脚本 在我的测试帐户 共享服务器上工作 使用 mail 函数通过 PHP 发送邮件 我刚刚得到了一个专用服务器 但我还无法让该功能发挥作用 在过去的 10 个小时左右的时间里 我阅读了有关 BIND 用于
  • 设置 Vim 背景颜色

    当我尝试更改背景颜色时 vimrc或者直接在 Vim 中使用以下命令 set background dark 这根本不影响我的背景 也没有light选项 不过 当我运行 gvim 时 看起来还不错 有没有办法在不更改 Konsole 设置的
  • 我们可以在 Bash 脚本中使用 PHP 吗?

    我有一个 bash 脚本abcd sh bin sh for i in seq 8 do ssh w i uptime ps elf grep httpd wc l free m mpstat done pid sleep 1 kill 9
  • Linux Shellcode“你好,世界!”

    我有以下可用的 NASM 代码 global start section text start mov eax 0x4 mov ebx 0x1 mov ecx message mov edx 0xF int 0x80 mov eax 0x1
  • C# - OPC-UA 服务器应用程序尚未在 Linux 计算机中创建 PKI 证书

    当我跑步时OPC UA serverWindows 机器中的 C 应用程序 然后 OPC UA 服务器已创建证书路径C ProgramData OPC Foundation pki own 并在此路径中生成一些证书 但是当我在中安装 OPC
  • 为什么“script”命令会生成 ^[ 和 ^M 字符以及如何使用 vim 搜索和替换删除它们?

    在linux上 使用bash shell 当我使用script命令时 生成的文件称为typescript 当我用 vim 打开该文件时 每一行都包含 M字符 并且有几行 由于我的彩色命令提示符 包含一个字符 我想用任何东西替换这些字符 从而
  • 有没有办法只安装mysql客户端(Linux)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有不需要安装整个mysql db安装包的Linux mysql命令行工具 我想做的是从服务器 1 应用程序服务器 执行将在服务器 2
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • 如何防止 CMake 在构建时(而不是安装时)为共享库创建符号链接?

    我正在使用 CMake 在 Linux 上使用 Bullet3 构建一个项目 在构建整个解决方案时 它会构建附加了 SOVERSION 的 Bullet 输出库 并创建一个不带版本的符号链接 对于我的特定场景 我不喜欢这种行为 并且我不想编
  • OS X 对 /usr/local/lib 的权限被拒绝

    我正在寻找有关权限问题的任何建议 直觉 线索 答案 自从我切换到新的 Macbook Pro 以来 这个问题一直困扰着我 这就是困境 某些程序在安装期间复制 usr local lib 下的库 并且在运行这些程序时出现崩溃 我认为这与此文件

随机推荐

  • Linux jar包启动、停止、查看状态 快捷脚本

    在将Java项目部署到服务器上后 为了简化操作和提高效率 我们可以借助一个命令脚本来快速启动 停止和查看项目 这样可以避免反复执行繁琐的命令 提高开发效率 直接上脚本 bin sh port 8899 定义变量等号左右不能有空格 jar n
  • Linux 内核编译——瞎编译导致的问题

    最近买了itop 4412 的板子 准被从内核移植 驱动编写 应用编程重新走一遍 刚开始很多问题没有搞懂 导致下面一些问题 后面会整理从0编译的文档 Makefile 506 arch Makefile No such file or di
  • LoRa模块一对多通信

    实验简介 基于sx1268芯片封装的lora模块 实现一个模块发送 其他模块接收的功能 用stm32单片机发送数据 电脑的串口调试助手显示接收的数据 实验框图 硬件环境 3个LoRa模块 2个USB转TTL模块 2台上位机 视情况准备胶棒天
  • 刚认识的,推荐赚钱能力超级硬核的美女、大佬的公众号!

    我坚持认为 工作之外的八小时的学习可以彻底拉开和同龄人的差距 对于程序员群体是可以通过深入阅读 高质量 的原创文章 积累了大量的架构 大数据 算法 管理 职场 前沿技术知识的 并且还可以扩大自己的人脉 因为今天要推荐的都是在自己的领域有所建
  • ExtJs笔记 (一)架构

    Ext JS遵循MVC MVVM架构 MVC 模型 model 视图 view 控制器 controller 体系结构 版本4 MVVM 模型 model 视图 view 模型视图 Viewmodel 版本5 这种架构不是强制要求的 但最好
  • 数据库的case when语句

    case when语句书写格式有两种 第一种是 CASE gender WHEN 1 THEN 男 WHEN 2 THEN 女 ELSE 其他 END 第二种是 CASE WHEN gender 1 THEN 男 WHEN gender 2
  • 复数矩阵分解的拆解思路(矩阵求逆/特征值分解)

    作者 桂 时间 2017 10 26 07 11 02 链接 http www cnblogs com xingshansi p 7735016 html 前言 主要记录特征值分解的硬件实现思路 一 实数矩阵转化 在FPGA运算中 对实数运
  • 数学建模-三次指数平滑法(预测模型)

    三次指数平滑预测法是在二次指数平滑值的基础上进行第三次指数平滑 同样 三次指数平滑值并不直接用来预测 而是为求解平滑系数 建立预测模型作准备 三次指数平滑法几乎适用于分析一切时间序列的应用问题 二次指数平滑预测模型是三次指数平滑预测模型的特
  • Android 屏幕适配方案

    转载请标明出处 http blog csdn net lmj623565791 article details 45460089 1 概述 大家在Android开发时 肯定会觉得屏幕适配是个尤其痛苦的事 各种屏幕尺寸适配起来蛋疼无比 如果我
  • Vite3 + Svelte3构建Web应用报错:‘process is not defined‘

    Vite爬坑日记 在使用 Vite3 Svelte3 构建 Web 应用时 控制台报错 process is not defined 问题原因 在 Vite 中 process env 全局环境变量被移除了 相当于 process env
  • windowsVNC远程桌面连接虚拟机

    准本环境关闭防火墙 systemct stop firewalld setenforce 0 iptables F 第一步虚拟机安装VNC yum y install tigervnc server 第二步VNC密码 vncserver 查
  • PowerShell-自定义函数(一) 第一个自定义Function

    在PowerShell中 我们可以自定义一个函数来实现一个特定的功能 以达到重复使用的目的 准备由简单到复杂做一个小系列分享一下 首先我们写一个非常简单的自定义函数 目标 输入姓名和年龄后 直接在显示 某某 今年 多少 岁 示例 Funct
  • WDS1期第11课 根文件系统 3 busybox 编译安装根文件系统make menuconfig install

    配置 编译 busybox 在根目录下INSTALL文件里有说明 make menuconfig This creates a file called config make This creates the busybox executa
  • 蓝桥杯 省赛真题寻找 2020

    简单题 暴力解决 include
  • 判断对象中是否存在某属性

    判断属性是否存在于对象的几种方式 const demoData name Tom age 18 sex undefined console log demoData name 打印值undefined console log name in
  • NNOM第一个模型实例

    目录 一 keras开发环境搭建 二 安装visual studio 2019 1 下载安装 2 配置使用MSVC编译器 三 编译第一个NNOM的demo 1 下载源码 2 安装依赖库 3 编译auto test 四 移植 1 新建新的VS
  • MPEG-4 Audio 关于esds 记录

    当解析Mp4的时候 会碰到这个esds 的box 这个box 有很多信息 当时是为了解决在MP4A中如何判断是acc还是 MP3 然后找到下面答案 https wiki multimedia cx index php title MPEG
  • ubuntu安装gcc-11提示Unable to locate package gcc-11

    使用 sudo apt get install gcc 11 想安装高版本的gcc但是怎么更新源都提示 Unable to locate package gcc 11 升级到ubuntu20 04也没解决 最后是添加了 sudo add a
  • html bottom html submit按钮表单控件与CSS美化

    一 html submit与bottom按钮基本语法结构 1 html submit按钮在input标签里设置type submit 即可设置此表单控件为按钮 submit按钮代码
  • HTTP协议-----------应用层协议

    一 引言 协议 就是一种约定 双方为了更好的完成某项活动 而一致遵守的约定 应用层协议 我们程序员自己定义的协议 最常见的应用层协议是http协议 二 URL和URI的区别与联系 URI统一资源标识符 用来唯一的标识一个资源 但不能定位 U