一篇让你彻底了解http请求报文和响应报文的结构

HTTP和HTTPS模块 Node.js 的 http 和 https 模块提供了构建网络应用的基础能力,理解它们的核心原理和特性对于开发高性能、安全的网络服务至关重要。在实际项目中,通常会结合上层框架使用,但底层原理仍然基于这些核心模块。使用最新 TLS 版本 (在 Node.js 中通过。: HTTP 请求方法 (GET, POST 等)始终验证 HTTPS 证书 (生产环境设置。重用 TCP 连接 (Keep-Alive)实现 RESTful API。: 请求的 URL 路径。: 组合设置状态码和头。服务间 HTTP 调用。 阅读详情

1.序

用于HTTP协议交互的信息被称为HTTP报文。请求端(客户端)的HTTP报文叫做请求报文,响应端(服务器端)的叫做响应报文。HTTP报文本身是由多行数据构成的字符串文本。HTTP报文大致可分为报文首部和报文主体两块。两者由最初出现的空行来划分。通常,并不一定要有报文主体。

2.请求报文

HTTP的请求报文由四部分组成(请求行+请求头部+空行+请求体):


真实数据


①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE、HEAD、OPTIONS、PUT、TRACE。不过,当前的大多数浏览器只支持GET和POST,Spring 3.0提供了一个HiddenHttpMethodFilter,允许你通过“_method”的表单参数指定这些特殊的HTTP方法(实际上还是通过POST提交表单)。服务端配置了HiddenHttpMethodFilter后,Spring会根据_method参数指定的值模拟出相应的HTTP方法,这样,就可以使用这些HTTP方法对处理方法进行映射了。

请求方法详解一篇让你彻底搞定HTTP方法与状态码​

②为请求对应的URL地址,它和报文头的Host属性组成完整的请求URL,

③是协议名称及版本号。

④是HTTP的报文头 ,报文头包含若干个属性,格式为“属性名:属性值”,服务端据此获取客户端的信息。

  • Client-IP:提供了运行客户端的机器的IP地址
  • From:提供了客户端用户的E-mail地址
  • Host:给出了接收请求的服务器的主机名和端口号
  • Referer:提供了包含当前请求URI的文档的URL
  • UA-Color:提供了与客户端显示器的显示颜色有关的信息
  • UA-CPU:给出了客户端CPU的类型或制造商
  • UA-OS:给出了运行在客户端机器上的操作系统名称及版本
  • User-Agent:将发起请求的应用程序名称告知服务器
  • Accept:告诉服务器能够发送哪些媒体类型
  • Accept-Charset:告诉服务器能够发送哪些字符集
  • Accept-Encoding:告诉服务器能够发送哪些编码方式
  • Accept-Language:告诉服务器能够发送哪些语言
  • TE:告诉服务器可以使用那些扩展传输编码
  • Expect:允许客户端列出某请求所要求的服务器行为
  • Range:如果服务器支持范围请求,就请求资源的指定范围
  • Cookie:客户端用它向服务器传送数据
  • Cookie2:用来说明请求端支持的cookie版本

⑤是报文体,它将一个页面表单中的组件值通过param1=value1¶m2=value2的键值对形式编码成一个格式化串,它承载多个请求参数的数据。不但报文体可以传递请求参数,请求URL也可以通过类似于“/chapter15/user.html? param1=value1¶m2=value2”的方式传递请求参数。

3.响应报文

HTTP的响应报文也由四部分组成( 响应行+响应头+空行+响应体):

真实数据


①报文协议及版本;
②状态码及状态描述;
状态码详解https://mp.weixin.qq.com/s/xxxS5qG244F6L10Y_ZxyGQ
③响应报文头,也是由多个属性组成;

  • Age:(从最初创建开始)响应持续时间
  • Public:服务器为其资源支持的请求方法列表
  • Retry-After:如果资源不可用的话,在此日期或时间重试
  • Server:服务器应用程序软件的名称和版本
  • Title:对HTML文档来说,就是HTML文档的源端给出的标题
  • Warning:比原因短语更详细一些的警告报文
  • Accept-Ranges:对此资源来说,服务器可接受的范围类型
  • Vary:服务器会根据这些首部的内容挑选出最适合的资源版本发送给客户端
  • Proxy-Authenticate:来自代理的对客户端的质询列表
  • Set-Cookie:在客户端设置数据,以便服务器对客户端进行标识
  • Set-Cookie2:与Set-Cookie类似
  • WWW-Authenticate:来自服务器的对客户端的质询列表

④响应报文体,即我们真正要的“干货”。

参考资料 :

1.https://my.oschina.net/megan/blog/269968

2.《图解HTTP》

原文地址:mp.weixin.qq.com/s/CLMr69mYx…

推荐阅读

为什么阿里巴巴的程序员成长速度这么快?

纳尼?SpringCloud要被淘汰了?IT行业下一个趋势是什么?

《飞马计划》到底是什么? 可以让数万程序员为之着迷

一年半开发经验拿多少钱合适?

看完三件事

如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:

点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。

关注公众号 『 Java斗帝 』,不定期分享原创知识。

同时可以期待后续文章ing🚀

Node.js-http模块 HTTP协议摘要:HTTP是应用层通信协议,规范浏览器与服务器交互规则。请求报文包含请求行(方法、URL、版本)、请求头(键值对元数据)、空行和请求体(POST数据)。响应报文包括状态行(版本、状态码)、响应头、空行和响应体(HTML/JSON等数据)。Node.js可通过http模块创建服务器,处理请求和设置响应。关键点包括MIME类型、连接管理、中文编码处理和端口配置。协议支持GET/POST等方法,使用状态码表示结果,并通过Content-Type指定数据类型。 阅读详情

相关推荐

HTTP报文结构详细讲解(HTTP请求报文和响应报文格式)

HTTP报文结构 HTTP有两类报文: 请求报文-------从客户向服务器发送请求报文,如图6-12(a) 响应报文-------从服务器到客户的回答,如图6-12(b) 由于HTTP是面向文本的,因此在报文中的每一个字段都是一些ASCII码串,因而各个字段的长度是不确定的。 请求报文和响应报文都是由三个部分组成。两种报文格式区别是开始行不同。 开始行,用于区分是请求报文还是响应报...

LOVEYSUXIN的专栏 3667

http 模块

一·http 模块 1.1 什么是 http 模块 回顾:什么是客户端、什么是服务器? 在网络节点中,负责消费资源的电脑,叫做客户端;负责对外提供网络资源的电脑,叫做服务器。 http 模块是 Node.js 官方提供的、用来创建 web 服务器的模块。通过 http 模块提供的 http.createServer() 方法,就能方便的把一台普通的电脑,变成一台 Web 服务器,从而对外提供 Web 资源服务。 如果要希望使用 http 模块创建 Web 服务器,则需要先导入它: const http =

weixin_43563864的博客 2936

网络_面试_HTTP请求报文和HTTP响应报文

HTTP请求报文和HTTP响应报文

weixin_42997698的博客 1212

七、http模块

本篇是关于Node.js中的http模块,通过该模块的方式createServer()创建Web服务器,以及通过http.request和http.get这些方法的请求数据和解决跨域问题

灵魂学者的博客 948

《web开发: (Node.js)http 模块》

一、Node.js http 网络模块 1.什么是 http 模块 回顾:什么是客户端、什么是服务器? 在网络节点中,负责消费资源的电脑,叫做客户端;负责对外提供网络资源的电脑,叫做服务器。 http 模块是 Node.js 官方提供的、用来创建 web 服务器的模块。通过 http 模块提供的 http.createServer() 方法,就 能方便的把一台普通的电脑,变成一台 Web 服务器,从而对外提供 Web 资源服务。 如果要希望使用 http 模块创建 Web 服务器,则需要先导入它:.

yexiang优快云的专栏 258

手把手教你:如何为自制的STM32H7飞控板适配PX4固件(基于NuttX)

本文详细介绍了如何为自制的STM32H7飞控板适配PX4固件,基于NuttX系统进行移植。从硬件设计规范到软件环境配置,再到PX4固件的移植与调试,提供了完整的实战指南。特别分享了如何复用FMU-v6u参考设计以节省开发时间,并解决了常见问题,帮助开发者快速实现高性能飞控系统的搭建。

weixin_27697385的博客 475

HTTP报文之"请求报文"和"响应报文"详解

本文详细介绍了Http报文之"请求报文"和"响应报文",欢迎阅读 ,一起进步。 Hope this article can really let you know the request message and response message. 文章目录一、报文序言二、请求报文三、响应报文 一、报文序言 HTTP协议简介:超文本传输协议(英文:Hyper Text Transfer Pr...

末尾卡片和博主交流学习! 1万+

工作笔记05:imu、底盘车轮、单激光雷达外参校准(基于hdl_graph_slam建图和定位)

目录1. imu 校准1.1 IMU型号1.2 坐标定义1.2.1 大地坐标系(WGS84)1.2.2 当地地理坐标系(ENU)1.2.3 传感器坐标轴定义1.3 传感器校准2. 底盘车辆参数配置3. 单激光雷达校准参考文献 1. imu 校准 1.1 IMU型号 阅读IMU产品说明书,获得如下信息: Yesense YIS300 系列惯性传感系统 YIS300 系列包含: YIS300-U 惯性测量单元(IMU):输出经过校准的加速度和角速度值,同时也能够输出磁场强度信息。 YIS300-V 垂直参考系

穿林需独行的博客 4203

HTTP请求报文和HTTP响应报文

HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的。HTTP有两类报文:请求报文和响应报文。 HTTP请求报文 一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,下图给出了请求报文的一般格式。 or <request-line> <headers> <

zhangliang_571的专栏 15万+

【雷达成像实战】RD、CS、RMA算法对比与Matlab实现:从信号处理到高清成像

本文深入对比了雷达成像中三种核心算法:经典的距离多普勒算法(RD)、基于稀疏重建的压缩感知算法(CS)以及高精度的快速多通道获取算法(RMA)。通过详细的Matlab实战代码,从原理拆解到实现步骤,分析了各自在计算效率、成像精度、数据需求和适用场景上的优劣,为工程选型与算法实践提供了清晰指南。

weixin_29095587的博客 449

【实验必备】对AffectNet数据集进行人脸对齐的小Demo

本文首先简单介绍了AffectNet数据集,及人脸关键点等背景知识,接着Po出了人脸对齐的代码及效果展示。注:本文代码参考自FG2021的Emotion-GCN的开源代码,具有一定的可靠性,欢迎大家学习!

信小海 2669

HTTP请求报文和响应报文

目录HTTP报文请求报文响应报文HTTP状态码HTTP状态码分类使用Chrome网络控制台查看通信报文 HTTP报文 HTTP报文是HTTP协议交互时所规定请求和响应的规则。请求端(客户端)向响应端(服务器端)请求的发送的信息叫做请求报文,响应端(服务器端)反馈请求端(客户端)的叫做响应报文。 请求报文 请求报文的格式由请求行+请求头+空行+请求体构成。 请求行: 请求方法 + 请求URL+ Http协议版本 请求方法: 常见的HTTP请求方法有GET和POST方法,还有DELETE、HEAD、OPTIO

1900's 88 keys的博客 5414

将物理信息神经网络(PINN)应用于微通道湍流的拓扑优化,并结合COMSOL数据进行训练与快速预测

本文提出一种基于物理信息神经网络(PINN)的微通道散热器流场快速预测方法。通过有限组COMSOL仿真数据训练神经网络,结合Navier-Stokes方程和能量方程作为物理约束,构建可快速预测新拓扑结构下速度场和温度场的替代模型。该方法包含数据准备、网络构建、损失函数设计等关键步骤,利用自动微分计算方程残差,显著降低传统CFD优化的计算成本,实现秒级/分钟级的流场预测,为微通道散热器拓扑优化提供高效解决方案。

huanghm88的专栏 536

通过fiddler了解http的请求报文和响应报文

请求报文与响应报文的组成请求报文组成部分一、请求行1、 请求方法2、统一资源定位符3、http版本号二、请求头三、空一行四、请求体响应报文组成部分一、响应行1、http的协议以及版本(同上)2、状态码3、是否被成功处理(这里的ok代表成功处理)二、响应头三、空行四、响应体 请求报文 组成部分 请求行(请求方法、统一资源定位符、http版本号)、请求头、空一行、请求体 一、请求行 1、 请求方法 2、统一资源定位符 3、http版本号 HTTP/1.1 一般是1.1,也有1.0的可能 二、请求头 三、

m0_46377561的博客 5511

Python3实现基于ARIMA模型来预测茅台股票价格趋势

ARIMA(Autoregressive Integrated Moving Average)模型是一种广泛使用的时间序列分析方法,它可以用于对未来的数据进行预测。ARIMA模型由自回归模型(AR模型)、差分整合模型(I模型)和移动平均模型(MA模型)组成,因此也被称为ARIMA(p,d,q)模型。其中,p表示自回归阶数,d表示差分阶数,q表示移动平均阶数。具体来说,ARIMA模型可以通过以下步骤进行建模:数据预处理:对时间序列进行平稳性检验,如果不满足平稳性,则进行差分操作。

m0_64336780的博客 2万+

华为OD机试真题 新系统 2026-09-06 Python&JS【仓储货物有序出库】

某仓储中心有一个货物堆放区,货物编号按乱序堆叠存放,只能从顶部取货,管理员需要将货物按编号从小到大取出。

MISAYAONE的博客 116

http请求报文和响应报文是怎样的

206 Partial Content」是应用于 HTTP 分块下载或断点续传,表示响应返回的 body 数据并不是资源的全部,而是其中的一部分,也是服务器处理成功的状态。「304 Not Modified」不具有跳转的含义,表示资源未修改,重定向已存在的缓冲文件,也称缓存重定向,也就是告诉客户端可以继续使用缓存资源,用于缓存控制。「200 OK」是最常见的成功状态码,表示一切正常。3xx 类状态码表示客户端请求的资源发生了变动,需要客户端用新的 URL 重新发送请求获取资源,也就是重定向。

himselfd的博客 1681

Unity零基础到入门 ☀️| 小万字教程 对 Unity 中的 协程 ❤️全面解析+实战演练❤️

Unity,为了让Unity基础知识专栏更加完善,又肝了一篇协程来学习。 协程在Unity中还是很常用的,一起来看一下协程的基本概念和使用方法吧!

努力前行,总会成为自己心中的那道光 8万+

http请求报文和响应报文

http请求报文和响应报文 前言 http协议是一个应用层协议,其报文分为请求报文和响应报文 当客户端请求一个网页时,会先通过http协议将请求的内容封装在http请求报文之中,服务器收到该请求报文后根据协议规范进行报文解析,然后向客户端返回响应报文。 http报文结构为: 起始行 对报文进行描述 头部 向报文中添加了一些附加信息,是一个名/只的列表,头部和协议配合工作,共同决定了客户端和服务器...

Lyn&Xx 5万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

HTTP 报文:请求报文和响应报文

本文围绕HTTP报文的请求与响应机制、Web开发模式及设计模式展开说明。 在HTTP请求报文部分,介绍了Flask框架中`request`对象的常用属性,包括`args`(接收URL参数)、`form`(接收表单参数)、`json`(接收JSON参数)等,并通过具体代码示例和Postman测试方法,演示了如何正确接收不同格式的请求数据。 响应报文部分,提出标准化的JSON响应格式(包含`code`状态码、`data`业务数据、`message`描述信息),并封装了通用响应函数以统一响应格式,同时给出使用

2402_87781262的博客 1762

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

HTTP请求报文和响应报文是怎样的?

**HTTP版本**:表明客户端希望使用的 HTTP 协议版本,常见的有 `HTTP/1.1` 和 `HTTP/2`。- **HTTP版本**:表明客户端希望使用的 HTTP 协议版本,常见的有 `HTTP/1.1` 和 `HTTP/2`。- **请求方法**:指定请求的操作类型,如 `GET`、`POST`、`PUT`、`DELETE` 等。- **请求方法**:指定请求的操作类型,如 `GET`、`POST`、`PUT`、`DELETE` 等。例如,`/index.html`。

qq_45906596的博客 1189

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

两分钟了解HTTP请求报文和响应报文

一、HTTP请求报文 HTTP请求报文由3部分组成(请求行+请求头+请求体): 请求行: ①是请求方法,如GET和POST。 ②为请求对应的URL地址,它和报文头的Host属性组成完整的请求URL。 ③是协议名称及版本号。 请求头: ④是HTTP的报文头,包含若干个属性,格式为“属性名:属性值”,服务端据此获取客户端的信息。与缓存相关的规则信息,均包含在header中 请求体: ⑤是报文体,它将一个页面表单中的组件值通过param1=value1&param2=value2的键值对形式编码成一个格

Destiny_shine的博客 3096

HTTP协议——请求报文和响应报文的结构

深入解析HTTP报文结构,包括方法、状态码和首部字段,揭示其在Web通信中的关键作用

weixin_44814196的博客 1715

HTTP报文-请求报文和响应报文

报文流 HTTP报文是在HTTP应用程序之间发送的数据块。这些数据块以一些文本形式的元信息(meta-information)开头。 报文的组成部分 对报文进行描述的起始行 包含属性的首部块 可选的、包含数据的主体 请求报文 响应报文 报文语法 报文分为请求报文和响应报文 请求报文的格式: <method> <re...

qq_33598708的博客 2272
上一篇: 云原生之:蚂蚁Service Mesh大规模落地实践与展望
下一篇: 985硕士去面龙图直接被 pass?网友直呼:这不比腾讯面试还要难
Java斗帝之路
博客等级 码龄7年 2392粉丝 687原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值