在ESP8266 NodeMcu V3中使用MicroPython编写一个HTTP Web服务器

在ESP8266 NodeMcu V3中使用MicroPython编写一个HTTP Web服务器

本文介绍了在ESP8266 NodeMcu V3中如何使用MicroPython通过socket编程建立一个HttpWeb服务器。服务器运行后可通过浏览器访问控制ESP8266 NodeMcu V3板载LED开关。
成果:使连接的LED可以从浏览器客户端打开或关闭。
方法:创建套接字并监听套接字。

import machine
import socket
import time
import network


sta_if = network.WLAN(network.STA_IF)
if not sta_if.isconnected():
  print('connecting to network...')
  sta_if.active(True)
  sta_if.connect('用户名', '密码')
  while not sta_if.isconnected():
    pass
print('network config:', sta_if.ifconfig())

html='''<!DOCTYPE html>
<html>
<head><meta charset='UTF-8'><title>网络led开关服务器</title></head>
<center><h2>网络LED开关服务器</h2></center>
<center><form>
<button name="LED" value='ON' type='submit'> LED ON </button>
<button name="LED" value='OFF' type='submit'> LED OFF </button>
</form>
</center>
'''
LED0 = machine.Pin(2,machine.Pin.OUT)
#led off
LED0.value(1)
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind(('',80))
s.listen(5)
while True:
  conn,addr=s.accept()
  print("GOT a connection from %s" % str(addr))
  request=conn.recv(1024)
  print("Content %s" % str(request))
  request=str(request)
  LEDON=request.find('/?LED=ON')
  LEDOFF=request.find('/?LED=OFF')
  if(LEDON==6):
    LED0.value(0)
  if(LEDOFF==6):
    LED0.value(1)
  response=html
  conn.send(response)
  conn.close() 

浏览器地址换成你自己的,如下图:
在这里插入图片描述

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

无名骆驼

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

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

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

打赏作者

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

抵扣说明:

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

余额充值