关于UPnP Device Architecture 2.0的阅读笔记(十二)

设备描述之使用HTTP获取描述文件


    如前面的描述,当一个控制点发现一个设备,它只了解了设备的很少信息,要获取设备的更详细的功能,控制点应该从发现消息提供的设备描述URL中提取出设备的描述文件.然后,控制点从设备描述文件中通过描述URL获取到该设备的多个服务描述.这是个基于HTTP的过程.

    获取设备描述文件很简单:控制点向发现消息中的URL发出一个HTTP GET请求,设备在HTTP响应的消息体中返回其设备描述.服务描述文件的获取也是这个过程.请求和响应消息的消息头信息和消息体在下面详细介绍.


    首先,控制点应该发送一个GET方法的请求,格式如下:


         GET /descriptionPath HTTP/1.1    #请求行,GET是HTTP定义的方法.路径URL.HTTP版本

        HOST: hostname:portNumber    #头信息,HOST必须,URL

        ACCEPT-LANGUAGE: language preferred by control point    #允许


    当一个控制点发送一个请求,设备进行第二步(描述)响应并发送其描述的拷贝.设备应在30s内响应.如果设备超出时间,控制点应该重发请求.两个响应格式的例子如下:

    1)使用CONTENT-LENGTH头信息的响应(HTTP/1.0或HTTP/1.1)


        HTTP/1.1 200 OK                                                                      #状态行 "200 OK"表示没有错误的状态码
        CONTENT-LANGUAGE: language used in description    #头信息
        CONTENT-LENGTH: bytes in body
        CONTENT-TYPE: text/xml; charset="utf-8"
        DATE: when responded

        Body    

    2)使用分块编码的响应(仅HTTP/1.1):如果请求消息支持HTTP/1.1,则可以以分块的消息体响应


        HTTP/1.1 200 OK                                                                  #状态行
        TRANSFER-ENCODING: chunked                                   #表示消息体分块编码
        CONTENT-TYPE: text/xml; charset="utf-8"
        CONTENT-LANGUAGE: language used in description
        DATE: when responded

        Length of chunk 1 in hexadecimal notation
            Chunk 1
        Length of chunk 2 in hexadecimal notation
            Chunk 2

        0


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值