httpwebrequest – 可移植类库中PreAuthenticate的替换

我正在将一个库移植到PCL,并且必须找到一个管理HTTP请求凭据的解决方案.我带走了像CredentialCache这样的具体凭证类(不可移植),现在只使用ICredentials,因此客户端应用程序可以创建适当的凭据并只发送一个接口引用.

但是还有一件事需要解决.在某些平台上,HttpWebRequest具有整洁的PreAuthenticate属性,可以处理初始握手.没有它,客户端需要捕获并响应401响应.但PreAuthenticate不是大多数PCL配置文件的一部分,我想知道是否有任何解决方案或客户端将需要实现替换逻辑本身(这是愚蠢的,因为这是一段标准代码).

提前致谢

最佳答案 您需要编写代码来自行处理.只有在您定位的所有平台上都可以使用API​​时,它才是可移植的.在这种情况下,PreAuthenticate是.NET 4.5和
Windows应用商店应用中的新API,因此如果您的目标是任何其他平台(即.NET 4,Silverlight或Windows Phone),它将无法在可移植类库中使用.

点赞