【发布时间】:2013-11-03 22:56:34
【问题描述】:
对于大多数人来说,这应该是一个简单的HttpRequestMessage 问题。我正在尝试按照UPnP Device Architecture doc 的第 4.1.2 节所述向 UPnP 设备发送订阅请求,我需要发送的消息应该如下所示:
SUBSCRIBE publisher path HTTP/1.1
HOST: publisher host:publisher port
USER-AGENT: OS/version UPnP/1.1 product/version
CALLBACK: <delivery URL>
NT: upnp:event
TIMEOUT: Second-requested subscription duration
显然,其中大部分内容都非常简单。我有一些问题,因为我目前的方法不起作用。我从服务器返回一个NotFound。
请求行 SUBSCRIBE 发布者路径 HTTP/1.1 是否与我创建 WebRequest (WebRequest.Create(...)) 时相同,或者是否有我可以设置的属性?
在这种情况下SUBSCRIBE 是HttpMethod 还是Get、POST、PUT 等?
这是当前的请求代码:
var request = WebRequest.Create(new Uri(eventUri)) as HttpWebRequest;
request.Method = "SUBSCRIBE";
request.UserAgent = "MyTab/1.0 UPnP/1.1 TestApp/1.0";
request.Headers["CALLBACK"] = "<" + hostname.DisplayName + ":8088>";
request.Headers["NT"] = "upnp:event";
request.Headers["TIMEOUT"] = "Second-300";
【问题讨论】:
标签: c# http-headers httprequest upnp