秦皇岛岛主 发表于 2017-7-6 17:03:37

uPyCraft-micropython教程之使用HTTP POST发送数据到oneNet

一. 注册10086的oneNet网站,进入开发者中心
二. 创建设备,记住你的API_KEY和DEVICE_ID,替换程序中的对应变量
这是我的设别列表列表


这是我真实的设备,这次实验使用18b20这个设备


三. 将uPy_Lib中的urequests.py拖动到lib目录下
四. 运行这个代码,就可以上传温度啦(注意替换你的API_KEY和DEVICE_ID哦,还要替换您路由器的SSID和PASSWD)
import urequests
import network
import socket
import time
import json

DEVICE_ID='3332733'
API_KEY='u39BKBvvXl6JHzXANvTR6qd5RPA='

SSID="DFROBOT_AP"
PASSWORD="12345678"
wlan=None
s=None

def connectWifi(ssid,passwd):
global wlan
wlan=network.WLAN(network.STA_IF)
wlan.active(True)
wlan.disconnect()
wlan.connect(ssid,passwd)
while(wlan.ifconfig()=='0.0.0.0'):
    time.sleep(1)
return True

def http_put_data(data):
    url='http://api.heclouds.com/devices/'+DEVICE_ID+'/datapoints'
    values={'datastreams':[{"id":"temperature","datapoints":[{"value":data}]}]}
    jdata = json.dumps(values)               
    r=urequests.post(url,data=jdata,headers={"api-key":API_KEY})
    return r
try:
connectWifi(SSID,PASSWORD)
rsp = http_put_data(86)
print(rsp.json())
except:
wlan.disconnect()
wlan.active(False)

运行结果


网站显示结果


嘿嘿,http post实验完成

HTTP请求的详细细节我就不班门弄斧了,这里有一个篇非常好的文档(支持他人原创),写的非常浅显易懂,有兴趣的同学可以学习一下。
https://my.oschina.net/manmao/blog/549123

super-power 发表于 2017-8-20 21:34:04

回个帖,占个位!
页: [1]
查看完整版本: uPyCraft-micropython教程之使用HTTP POST发送数据到oneNet