2013-03-04 42 views
5

我目前正在尝试编写Windows Phone 7.1应用程序,该程序允许您访问Coursera课程信息,包括流式讲座。Windows Phone BackgroundTransferRequest问题

我希望能够让用户下载演讲视频幻灯片(PDF)。不幸的是文件被保护。这通常不是问题。我的ClientHttpWebRequest设置为使用CookieContainer。这一切都很好。

尝试使用BackgroundTransferRequest来下载资产时很有趣。该课程不允许您为Cookie提供CookieContainer实例。这意味着我必须使用BackgroundTransferRequest.Headers来设置值。

Coursera将其会话cookie作为HttpOnly cookie返回。不幸的是,ClientHttpWebRequest不允许您访问来自响应的HttpOnly cookie,并且通过代理,意味着我无法从CookieContainer中读取会话cookie。

有没有什么明显的我错过了那将允许我访问我感兴趣的价值,还是我需要拿出我自己的后台文件传输基础设施?

回答

1

不,你不会错过任何东西。这是SDKs产品中的一个缺口。

虽然我可以考虑2种可能的替代方案。

  1. 让应用程序在锁屏下运行并自行处理下载。 - 这是我们在背景文件传输可用之前必须做到的。

  2. 让您自己的代理服务器位于应用程序和其他可以处理cookie事物的站点之间,并使文件直接提供给应用程序。很明显,在采用这种方法之前,可能需要考虑重要的安全考虑因素。运行和维护服务器可能还需要额外的成本。