单片机+网络模块(以太网、WIFI)搭建Web服务器
简述
现常见的Web客户端与服务器之间采用HTTP协议交互,一般通信都由客户端主动发起。HTTP是则是基于TCP之上的应用层协议,对于单片机系统而言,集成完整的Web服务器需要的资源太大,效率不高。本人介绍,如何在单片机跑裸机的环境下实现简易的web服务器,并可通过电脑、手机上传、下载资源。
前提条件
1、单片机(最好4+32及以上资源)+ 以太网模块/WIFI模块二选一。2、已能正常的进行TCP传输(这里不讲述如何实现TCP通信)。
3、最好是能了解下基本的前端开发。
本质
1、浏览器访问Web服务器过程
1)、浏览器首先与输入的URL服务器建立TCP连接,端口默认是80,然后向服务器请求URL标识符中指定的资源;(默认采用的是HTTP协议)2)、Web服务器响应对应的资源请求;3)、浏览器解析对应的响应资源,解析成网页页面展现给用户;
2、单片机搭建的Web服务器资源是需要预先存放在单片机Flash中,根据实际需要展现的内容复杂程度不同,对单片机资源要求不同。
3、实际通讯中,客户端(浏览器)与服务器均是采用HTTP协议进行数据、资源交互;
4、HTTP协议本质是基于TCP协议上,增加了状态行、请求头、请求正文(HTTP请求),状态行、响应头、响应正文(HTTP响应)等内容;
欢迎留言讨论,后期我会分享我的源码例程!
单片机+网络模块(以太网、WIFI)搭建Web服务器相关推荐
- arm Linux 低成本方案,参赛作品《低成本基于ARM+Linux平台搭建web服务器的物联网学习板》...
[报名阶段需要填写的内容] 1. 参赛者姓名(必填项): 王徕泽 2. 单位或学校名称(选填项): 徕泽电子工作室 3. 当前职务或职称(选填项): 室长 4. 参赛作品的名字(必填项): 低成本基于 ...
- 在 Android 设备上搭建 Web 服务器
在 Android 设备上搭建 Web 服务器 叶志陈已关注 12018.04.11 00:20:05字数 1,018阅读 10,291 一般而言,Android 应用在请求数据时都是以 Get 或 ...
- nodemcu 自建服务器,NodeMCU入门(4):搭建Web服务器,配置网络连接(示例代码)
准备工作 1.NodeMCU模块 2.ESPlorer v0.2.0-rc6 3.NodeMCU-HTTP-Server 搭建web服务器 修改init.lua文件,可参看NodeMCU-HTTP-S ...
- windows 下搭建Web服务器
windows 下Web服务器的搭建 注:在搭建Web服务器时要有DNS与IIS的支持. 转载于:https://blog.51cto.com/babymylove/161310
- 20秒搭建web服务器,跨平台(mac,window)
服务器: http-server 问题: 其实搭建web服务器有很多种方法,比如: 1.本地的 apache, nginx 2.自己下载安装一个软件,如phpServer 3.node.js 静态we ...
- 利用自己的电脑设置web服务器建网站_win7系统篇,win7系统利用iis搭建web服务器实现信息浏览资源共享的操作方法...
很多小伙伴都遇到过对win7系统利用iis搭建web服务器实现信息浏览资源共享进行设置的困惑吧,一些朋友看过网上对win7系统利用iis搭建web服务器实现信息浏览资源共享设置的零散处理方法,并没有完 ...
- 使用Django搭建web服务器(最最正确的方式)
今晚在Mac OS中搭建web服务器时遇到一点冲突,逛了几个论坛和网站,都说的太片面. 赠送源码:GitHub - Pangu-Immortal/MagicWX:
- centos下搭建网站服务器,Centos7搭建web服务器
搭建web服务器 提供网站服务 1.配置IP地址 vim /etc/sysconfig/network-scripts/ifcfg-ens33 2. 启动 network服务 查看IP地址 ...
- 一、服务端开发基础(搭建Web服务器、网络基础概念、请求响应流程、配置Apache、静态网站与动态网站)
一.建立你的第一个网站(目标) 前端开发 最终还是属于 Web 开发 中的一个分支,想要成为一名合格的前端开发人员,就必须要 充分理解Web 的概念. 构建一个专业的网站是一项巨大的工作!对于新手我们 ...
- win7系统怎么搭建web服务器,win7系统搭建web服务器的操作方法
很多小伙伴都遇到过对win7系统搭建web服务器进行设置的困惑吧,一些朋友看过网上对win7系统搭建web服务器设置的零散处理方法,并没有完完全全明白win7系统搭建web服务器是如何设置的,今天小编 ...
最新文章
- Ruby on Rails入门(2.1)
- 鲁迅散文——随感录三十五
- html 批量转换excel,Excel批量转为Html,Html转换成Excel
- 集群(二)——LVS-DR-Keepalived
- SAP UI5 应用指定主题 theme 的几种方式和其优先级
- fisher-yates_使用Fisher-Yates随机播放算法以O(n)时间随机播放给定数组
- 工作373-前端 import与export区别
- java试讲题目,常见的Java面试题汇总
- python自动化控制设备有限公司_华为 Python网络自动化
- VMWare笔记-解决虚拟机能ping通主机能上网,但主机ping不通虚拟机(含思路)
- 使用计算机控制台方法,故障控制台使用方法
- html日期格式化标签,js日期格式化yyyymmdd
- python vim插件_有哪些好用到爆的vim插件?
- 模块划分-4 模块划分
- 计算机专业知识更新速度快,最近及计算机专业知识.doc
- 公共服务中,人脸识别的三类风险隐患与安全防护
- java8中for循环的几种写法
- CodeWarrior下载及安装
- UML统一建模(语言)和数据库建模
- vs2010 添加向前导航/向后导航按钮
热门文章
- 微电子器件实验 03 - | 晶体管开关时间的测量
- 手把手安装Origin软件
- 在VMware16虚拟机中安装Windows10操作系统详细过程!!必看
- 2023全国安全生产合格证其他生产经营单位主要负责人模拟一[安考星]
- 关于mac 10.12.3 USB启动盘制作 分享
- C#的兰姆达表达式与委托配合使用时的一些问题
- 德系车,美系车,日系车都有什么品牌
- 基础篇第一版---Linux 档案与目录管理 lt;摘自鸟哥的私房菜gt;
- sql server 2012服务器安装
- dcu故障是哪_【车匠在线-故障案例】潍柴自主DCU通讯故障