Silverlight - 检查302 http响应

时间:2009-02-26 11:55:42

标签: silverlight http http-status-code-302

有没有人知道是否有可能发现Silverlight中WCF调用的响应导致302(临时重定向)。

生成302是因为我们的服务落后于ISA并且用户会话超时。 Silverligt应用程序仍然在浏览器中加载,并且usre进行交互以进行失败的WCF调用。我可以得到一个Not Found错误但是这也报告了许多不同的问题,所以不是真正的解决方案。我想专门定位302并刷新页面以让用户重新进行身份验证。

2 个答案:

答案 0 :(得分:1)

我遇到了类似的问题,幸运的是找到了一个解决方案:能够检索除200或404之外的Web请求的StatusCode,你应该使用

var request = WebRequestCreator.ClientHttp.Create(uri)

而不是

var request = WebRequest.Create(uri) as HttpWebRequest;

我最近在这个问题上写了一篇文章,你可以看看here

答案 1 :(得分:0)

我正在寻找同一问题的答案,但决定不使用这种方法来解决我正在处理的问题,所以我没有适合您的解决方案,但如果您使用的是Silverlight 3 ,那么你可以解决它。我已经使用了本页底部讨论的备用Http堆栈:

http://developers.de/blogs/damir_dobric/archive/2009/08/22/soap-faults-and-new-network-stack-in-silverlight-3.aspx

这至少让我可以访问SOAP错误,但我不知道是否/如何访问HTTP 302响应,因为当我尝试这样做时,我发现Silverlight似乎实际上遵循了重定向,在那里重新发出我的SOAP请求,而不是将其报告给我的应用程序。

我开始调查的是如何使用行为改变这种情况。虽然不知道是否可行,但我对这项调查并没有太大的帮助!