ESP8266使用AT指令进行API访问
今天看到了一个有关使用
ESP8266的AT指令
的HTTP连接的demo,因此想拿来 访问API试一下,简单访问心知天气
天气服务平台的地区天气接口(万物基于API,你细品)
本文仅发布在CSDN 青云双青 和我的个人博客,其他地方出现均为搬运
需要准备的
- NodeMCU开发板一个
(ESP-12E)
- Flash Download Tools 烧录软件一个
- AT指令的固件
- 串口助手QCOM_V1.1
已经注册成功的心知天气的API接口一个(下面这个可以直接使用)
https://api.seniverse.com/v3/weather/now.json?key=SBHCbw5MrmOr6BLqN&location=nanjing&language=zh-Hans&unit=c
心知天气平台说明
心知致力于通过气象和环境大数据分析为企业提供气象信息产品和BI服务,帮助企业增强在不同天气和环境中赢利的能力。心知的团队核心成员来自微软、Google、京东、Frog Design等知名公司,心知天气正在为华为、中国航信、科勒、泰康人寿、中青旅、霍尼韦尔、大姨吗等上百家客户提供企业级的气象服务。
心知天气注册链接
给8266烧录AT固件
a.将NodeMCU与PC连接,确定安装好 串口驱动
并且保证可以在设备管理器查看到端口号
b.打开 Flash Download Tools
烧录软件,选择 ESP8266
,然后按照下面的配置选择和烧录代码
c.选择的固件名称为
AiThinker_ESP8266_DOUT_32M-C1_0.0.0.7s_20170804.bin
d.下载地址为
0x0000
e.更多的信息如图,需要特别注意红框里面的内容要一致
d.点击烧录,等待完成即可,全程不用再对板子进行任何操作
烧录成功测试
让NodeMCU与PC相连,打开串口助手,设置波特率为 115200
,然后发送 AT+RST
,会收到下面的回复即为正常Ok
串口发送AT指令
这里仅给出AT指令的设置和对应的含义,对8266返回的代码不再说明
配置WiFi模组为单STA模式并保存
AT+CWMODE_DEF=1
配置要连接的AP的信息
AT+CWJAP_DEF="XXXX","XXXX"
使能上电自动连接AP
AT+CWAUTOCONN=1
建立到Host的80端口TCP连接
AT+CIPSTART="TCP","api.seniverse.com",80
设置透传
AT+CIPMODE=1
启动发送
AT+CIPSEND
访问请求格式 GET+ API 接口
GET https://api.seniverse.com/v3/weather/now.json?key=SBHCbw5MrmOr6BLqN&location=nanjing&language=zh-Hans&unit=c
- 按照顺序以此输入即可,如果指令有效则会返回
ok
- 如果使用普通的串口助手记得在指令后面添加
回车+换行
- 默认的波特率为
115200
执行结果
- 对于的到的数据判断是Json格式的数据,但是出现了乱码,可能是对汉字字符的不匹配,后续我再继续研究来解决这种问题
使用Json在线工具解析
其实AT指令在这里就是与服务器建立了TCP连接,使用指令进行GET的访问形式来获取API对应的Json数据
你可以直接点击这个 链接测试,结果是相同的
总结
- 借助AT指令的开发,在有时候对数据的获取会特别方便
- 这个HTTP demo 的原理其实和浏览器访问是一样的
- 你可以举一反三,可以再另借助单片机去
解析得到的Json数据
,得到自己想要的数据 - 也可以访问
Onenet的服务器
或者进行BiliBili的粉丝数
的获取
本文使用MarkDown语法编辑,如有疑问可以私信或者在下方评论留言!
ESP8266使用AT指令进行API访问相关推荐
- 毕设 CC2530+esp8266使用AT指令上传与获取onenet服务器的数据
CC2530+esp8266使用AT指令上传与获取onenet服务器的数据 我们首先看效果视频, VID_20221023_175149(0)(0) 我一开始做这个项目的时候我发现对于这个CC2530 ...
- ODBC + WIN32 API 访问MYSQL 数据库实现简单QQ用户注册和登录 的代码分析
ODBC + WIN32 API 访问MYSQL 数据库实现简单QQ用户注册和登录 的代码分析 . / // datadase odbc1.cpp : 定义应用程序的入口点. // #inc ...
- 6 HBase java API访问HBase数据库
HBase java API访问HBase数据库 package com.hunan.hbase_options;import org.apache.hadoop.conf.Configuration ...
- Java API访问HDFS集群(HA)
title: Java API访问HDFS集群(HA) date: 2021-06-23 17:06:11 tags: HDFS hadoopV2版本及以后都是HA架构,active namenode ...
- ElasticSearch 使用Java Api访问集群
ElasticSearch 使用Java Api访问集群 1.创建maven工程导入pom依赖 <dependencies><dependency><groupId> ...
- python谷歌翻译 频率限制_Django限制API访问频率常用方法解析
需求描述: 平台中需要编写接口供第三方调用,需要控制调用频率,需求为5s内调用一次后不得再次调用. 解决思路 1.Django官方插件库中有个django-ratelimit插件可以满足要求, dja ...
- Java API 访问HA模式下的HDFS集群
在使用Hadoop Java API访问HDFS集群时,在创建FileSystem对象时,直接指定NameNode的IP以及端口号即可.但是在HA模式下,访问HDFS集群却有一些不同,需要指定Name ...
- 网易云api访问登录后仍返回{msg: ‘需要登录‘, code: 301}
网易云api访问登录后仍返回{msg: '需要登录', code: 301} 在用网易云API做网页时,需要使用某些需要登录的接口,在登录后仍然无法获取相关数据. 原因:在跨域请求时,没有携带用户凭证 ...
- 使用Arcgis Javascript api 访问其他地图
概述 在最初接触GIS开发的时候,手上没有任何的地图数据,只是简单的把ArcGIS提供的或者国家地理信息中心公开的低分辨率矢量数据使用ArcGIS Server发布成地图服务来使用.慢慢的开始下载Go ...
最新文章
- mybatis中${}和#{}的区别
- 硅谷蓝图创始人 Patrick:数据驱动规模化增长
- wx5 mysql起不来_mysql(四)—–mysql主从配置-wx5bd1240aa20ac的博客
- 嵌入式系统中看门狗概述。。。
- Spring MVC –自定义RequestMappingHandlerMapping
- 洛谷 P3183 [HAOI2016]食物链
- #define 喵 int_【Angew. Chem. Int. Ed.】具多样化不对称反应性的三氮唑芳基碘化物
- Tapestry5中的DI
- 【漫画】程序员永远修不好的Bug——情人节
- 手机还能做电路仿真啊!电子电路兴趣爱好者福音!
- css在线代码生成工具汇总
- 群晖python套件包_想在群晖上运行python该怎么弄?
- Android将数据导出为excel文件的方法
- 详解CSS中的百分号%设置
- 【愚公系列】2022年09月 微信小程序-WebGL立体图形的绘制
- redis--客户端
- 前后端分离状态保持问题之JWT
- 那位学软件测试的广州宝妈,后来怎样了?
- 读书笔记--PRML(1)
- 【版本管理】软件项目版本号的命名规则及格式