3457|8

2144

帖子

3

TA的资源

五彩晶圆(中级)

楼主
 

【Atmel SAM R21创意大赛周计划】+RPL Simple-WebServer [复制链接]

恩,前面的帖子基本上已经跑起来基本的网络了,现在应该可以做一些应用了。
搞点直观的东西吧,webserver不得不说还是比较基础的,那就弄一下了。参考开源的httpd-simple.c文件
一些版权信息如下
  1. /**
  2. * \file
  3. *         A simple web server forwarding page generation to a protothread
  4. * \author
  5. *         Adam Dunkels <adam@sics.se>
  6. *         Niclas Finne <nfi@sics.se>
  7. *         Joakim Eriksson <joakime@sics.se>
  8. */
复制代码
硬件连接和节点网络和之前发表的rpl边界路由的一致,在边界路由中添加了一个简单的web,当然可以添加在其他的节点中,用于控制/状态查询等。

这里给出一些测试截图,注意那个单位是us,这里有些问题,目前已经修改





测试中使用了chrome不能够正常,IE和Firefox都是正常的,顺便说一下如何使用ipv6的地址来访问webserver
格式如下
http://[IPV6]:端口/index.html


我的节点地址是aaaa::11,默认端口80且没有index
所以访问按照如下的格式就可以了
http://[aaaa::11]




最后添加一个IE访问的截图,已经修改路由存活时间的单位为us


最新回复

是不是chrome的ipv6功能被关了  详情 回复 发表于 2015-2-1 15:28

赞赏

1

查看全部赞赏

点赞 关注
个人签名电工
 

回复
举报

1万

帖子

25

TA的资源

版主

沙发
 
学习了。

点评

谢谢 添加了一些内容  详情 回复 发表于 2015-1-14 09:16
 
 
 

回复

2144

帖子

3

TA的资源

五彩晶圆(中级)

板凳
 
两种最常用的 HTTP 方法是:GET 和 POST


什么是 HTTP?超文本传输协议(HTTP)的设计目的是保证客户机与服务器之间的通信。
HTTP 的工作方式是客户机与服务器之间的请求-应答协议。
web 浏览器可能是客户端,而计算机上的网络应用程序也可能作为服务器端。
举例:客户端(浏览器)向服务器提交 HTTP 请求;服务器向客户端返回响应。响应包含关于请求的状态信息以及可能被请求的内容。


两种 HTTP 请求方法:GET 和 POST在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST。
  • GET - 从指定的资源请求数据。
  • POST - 向指定的资源提交要被处理的数据


GET 方法
请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:
/test/demo_form.asp?name1=value1&name2=value2有关 GET 请求的其他一些注释:
  • GET 请求可被缓存
  • GET 请求保留在浏览器历史记录中
  • GET 请求可被收藏为书签
  • GET 请求不应在处理敏感数据时使用
  • GET 请求有长度限制
  • GET 请求只应当用于取回数据


POST 方法
请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的:
POST /test/demo_form.asp HTTP/1.1Host: w3schools.comname1=value1&name2=value2有关 POST 请求的其他一些注释:
  • POST 请求不会被缓存
  • POST 请求不会保留在浏览器历史记录中
  • POST 不能被收藏为书签
  • POST 请求对数据长度没有要求


比较 GET 与 POST下面的表格比较了两种 HTTP 方法:GET 和 POST。
GETPOST
后退按钮/刷新无害数据会被重新提交(浏览器应该告知用户数据会被重新提交)。
书签可收藏为书签不可收藏为书签
缓存能被缓存不能缓存
编码类型application/x-www-form-urlencodedapplication/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。
历史参数保留在浏览器历史中。参数不会保存在浏览器历史中。
对数据长度的限制是的。当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。无限制。
对数据类型的限制只允许 ASCII 字符。没有限制。也允许二进制数据。
安全性与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。
在发送密码或其他敏感信息时绝不要使用 GET !
POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。
可见性数据在 URL 中对所有人都是可见的。数据不会显示在 URL 中。


其他 HTTP 请求方法下面的表格列出了其他一些 HTTP 请求方法:
方法描述
HEAD与 GET 相同,但只返回 HTTP 报头,不返回文档主体。
PUT上传指定的 URI 表示。
DELETE删除指定资源。
OPTIONS返回服务器支持的 HTTP 方法。
CONNECT把请求连接转换到透明的 TCP/IP 通道。








 
个人签名电工
 
 

回复

2144

帖子

3

TA的资源

五彩晶圆(中级)

4
 
实例

My First Heading

My first paragraph.

什么是 HTML?HTML 是用来描述网页的一种语言。
  • HTML 指的是超文本标记语言 (Hyper Text Markup Language)
  • HTML 不是一种编程语言,而是一种标记语言 (markup language)
  • 标记语言是一套标记标签 (markup tag)
  • HTML 使用标记标签来描述网页
HTML 标签HTML 标记标签通常被称为 HTML 标签 (HTML tag)。
  • HTML 标签是由尖括号包围的关键词,比如
  • HTML 标签通常是成对出现的,比如
  • 标签对中的第一个标签是开始标签,第二个标签是结束标签
  • 开始和结束标签也被称为开放标签闭合标签
HTML 文档 = 网页
  • HTML 文档描述网页
  • HTML 文档包含 HTML 标签和纯文本
  • HTML 文档也被称为网页
Web 浏览器的作用是读取 HTML 文档,并以网页的形式显示出它们。浏览器不会显示 HTML 标签,而是使用标签来解释页面的内容:

My First Heading

My first paragraph.

例子解释
  • 与 之间的文本描述网页
  • 与 之间的文本是可见的页面内容
  • 之间的文本被显示为标题
  • 之间的文本被显示为段落
 
个人签名电工
 
 

回复

2144

帖子

3

TA的资源

五彩晶圆(中级)

5
 
通过以上的两篇关于HTML的简单分析可以看出,只要我们的节点能够按照html的格式发送出符合html格式的文本即可实现webwerver了

当然有一些前提,节点支持tcp连接方式,节点支持http协议,这个算是应用层协议,也就是在TCP之上的协议,说简单一些
当我们的浏览器(其实是个客户端)发送出http协议的get请求到节点时,节点能够解析这个请求并把我们的网页发送出去就行了,就这么简单。当然这也是基本的一个流程,http协议支持的复杂度决定了这个服务器的一部分能力,当然还受tcp/资源的限制,当然还有一些并发什么的。不深究了。

希望大家能够明白过程,有问题,一起交流。文章不一定要写的很好,最后是大家能一起交流是最好的。

点评

说的很清楚了,这样很不错。  详情 回复 发表于 2015-1-14 09:47
 
个人签名电工
 
 

回复

2144

帖子

3

TA的资源

五彩晶圆(中级)

6
 
谢谢  添加了一些内容



 
个人签名电工
 
 

回复

1万

帖子

25

TA的资源

版主

7
 
lyzhangxiang 发表于 2015-1-14 09:14
通过以上的两篇关于HTML的简单分析可以看出,只要我们的节点能够按照html的格式发送出符合html格式的文本即可实现webwerver了

当然有一些前提,节点支持tcp连接方式,节点支持http协议,这个算是应用层协议,也就是在TCP之上的协议,说简单一些
当我们的浏览器(其实是个客户端)发送出http协议的get请求到节点时,节点能够解析这个请求并把我们的网页发送出去就行了,就这么简单。当然这也是基本的一个流程,http协议支持的复杂度决定了这个服务器的一部分能力,当然还受tcp/资源的限制,当然还有一些并发什么的。不深究了。

希望大家能够明白过程,有问题,一起交流。文章不一定要写的很好,最后是大家能一起交流是最好的。


说的很清楚了,这样很不错。

 
 
 

回复

3416

帖子

0

TA的资源

纯净的硅(高级)

8
 
是不是chrome的ipv6功能被关了

点评

恩,很有可能啊,原则上IE上面可以没理由chrome上不行,有时间看看IE都可以我挺诧异的,不过微软还蛮重视ipv6的,支持上也很合情合理  详情 回复 发表于 2015-2-1 19:22
 
个人签名

So TM what......?

 

 

回复

2144

帖子

3

TA的资源

五彩晶圆(中级)

9
 
ljj3166 发表于 2015-2-1 15:28
是不是chrome的ipv6功能被关了

恩,很有可能啊,原则上IE上面可以没理由chrome上不行,有时间看看IE都可以我挺诧异的,不过微软还蛮重视ipv6的,支持上也很合情合理



 
个人签名电工
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表