极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: zcbzjx

ENC28J60利用ethercard库httpPost函数发送数据到yeelink或者乐联网

[复制链接]
 楼主| 发表于 2013-5-29 00:37:41 | 显示全部楼层
更新了下这个帖子,增加如何上传数据到乐联网,恩,道理都差不多,httppost函数封装得很好。
回复 支持 反对

使用道具 举报

发表于 2013-6-5 00:07:30 | 显示全部楼层
张老师,您好,有个问题向您请教:
我定义了700个字节的接收缓冲区 byte Ethernet::buffer[700],发送post页面请求后实际返回的数据长度应该是589个字节,但是,接收到响应返回后,我打印缓冲区的内容,却发现只有前面的567个字符被打印出来,后面的22个字符被截掉了。即使我将接收缓冲区的长度定义成1000,还是只能返回前567个字符。这是怎么回事?是EtherCard库对接收缓冲区的长度有默认的限制吗?如何才能将589(或者更长)个字节的数据全部返回并读取到?希望能得到您的指教。感激不尽。
回复 支持 反对

使用道具 举报

发表于 2013-6-5 08:07:44 | 显示全部楼层
网友 亲亲哥哥 开发的Yeelink SDK,开源在了github上面,可以直接使用了
http://bbs.yeelink.net/forum.php ... &extra=page%3D1
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-5 13:52:22 | 显示全部楼层
yierspace 发表于 2013-6-5 00:07
张老师,您好,有个问题向您请教:
我定义了700个字节的接收缓冲区 byte Ethernet::buffer[700],发送post ...

我也纠结这个问题嘞。。同求答案。。。
回复 支持 反对

使用道具 举报

发表于 2013-6-7 13:42:37 | 显示全部楼层
额。。。看来这还真不是个简单的问题啊。。。寻求民间高人指点。
回复 支持 反对

使用道具 举报

发表于 2013-7-7 15:41:39 | 显示全部楼层
怎么得到网页GET 或 POST 时的参数的值呢? 求指教,张老师。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-7-7 19:48:30 | 显示全部楼层
nierixin 发表于 2013-7-7 15:41
怎么得到网页GET 或 POST 时的参数的值呢? 求指教,张老师。

没太明白问题,能举个实际的例子么?
回复 支持 反对

使用道具 举报

发表于 2013-8-1 14:23:39 | 显示全部楼层
zcbzjx 发表于 2013-7-7 19:48
没太明白问题,能举个实际的例子么?

就是HTTP中 PUT或者GET方法  那个库中有没有对应的方法
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-2 13:23:47 | 显示全部楼层
nust_奔跑 发表于 2013-8-1 14:23
就是HTTP中 PUT或者GET方法  那个库中有没有对应的方法

browseUrl()就是get方法,put方法没有可以用stash生成,详情请看库中的pachube例程
回复 支持 反对

使用道具 举报

发表于 2013-12-16 13:39:14 | 显示全部楼层
要是一次上传几个传感器的数据该怎么修改?
运行一次
ether.httpPost (urlBuf, website, apiKey, buf, my_result_cb);
就可以正常上传;
但是顺序执行几次就都不能上传?
回复 支持 反对

使用道具 举报

发表于 2013-12-16 13:47:26 | 显示全部楼层
上传几个传感器的数据,该怎么操作呢?
使用ether.httpPost (urlBuf, website, apiKey, buf, my_result_cb);上传一个传感器数据时,可以正确完成;但是当顺序多次调用ether.httpPost就不能上传了,是不是有哪些地方需要复位或清空?
谢谢
回复 支持 反对

使用道具 举报

发表于 2014-4-9 21:20:49 | 显示全部楼层
不好意思!請問一下前輩
Server: 42.96.164.52
<<< reply 979 ms
HTTP/1.1 403 Forbidden
Server: nginx/1.1.19
Date: Wed, 09 Apr 2014 13:19:04 GMT
Content-Type: text/html
Connection: close
X-Powered-By: PHP/5.3.10-1ubuntu3.6
Set-Cookie: CAKEPHP=mdkqvtgl1fiiao7grctvrqs356; expires=Thu, 17-Apr-2014 21:19:04 GMT; path=/
P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"

U-ApiKey incorrect

出現403 Forbidden的函意是??

一端不接受數據嗎?
回复 支持 反对

使用道具 举报

发表于 2014-5-18 20:17:28 | 显示全部楼层
版主你好,用你给的代码,使用PROGMEM 定义变量放在FLASH中,如char website[] PROGMEM = "api.yeelink.net";编译时没问题,但执行到
if (!ether.dnsLookup(website))
      Serial.println("DNS failed");
就会出现DNS failed
如果改成const char website[] = "api.yeelink.net";就没问题了。我用的是Arduino1.05版本。
请问您的用PROGMEM的代码是正确,我的错误是什么原因?
其他人有遇到过吗?
谢谢!
回复 支持 反对

使用道具 举报

发表于 2014-5-25 15:27:24 | 显示全部楼层
x852770 发表于 2014-4-9 21:20
不好意思!請問一下前輩
Server: 42.96.164.52

403错误一般是服务器上的文件和目录拒绝访问,一般的情况可能是:你写网址有误,所指的网页不存在,或是目录不正确。
回复 支持 反对

使用道具 举报

发表于 2014-5-25 15:31:48 | 显示全部楼层
nust_奔跑 发表于 2013-8-1 14:23
就是HTTP中 PUT或者GET方法  那个库中有没有对应的方法

可能你是要问自己架设服务器的话,服务器端应如何获得客户端单片机通过Get或是Post发上去的数据吧。如果是这样的话,你就需要了解一些动态网页编程语言了。早期的Asp,PHP中都有相应的方法的。这个需要你在服务器端的网页设计程序中实现。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-20 02:54 , Processed in 0.051081 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表