0

Silverlight での WCF 呼び出しからの応答が 302 (一時的なリダイレクト) になったことを発見できるかどうかは誰にもわかりません。

302 は、サービスが ISA の背後にあり、ユーザー セッションがタイムアウトしたために生成されます。Silverligt アプリはブラウザーに読み込まれたままになり、ユーザーが対話して WCF 呼び出しを行いますが、失敗します。Not Found エラーが発生することがありますが、これはさまざまな問題についても報告されているため、実際の解決策ではありません。具体的には 302 をターゲットにしてページを更新し、ユーザーに再認証してもらいたいと考えています。

4

2 に答える 2

1

私は同様の問題に直面し、幸運にも解決策を見つけました: 200 または 404 以外の Web リクエストの StatusCode を取得できるようにするには、使用する必要があります

var request = WebRequestCreator.ClientHttp.Create(uri)

それ以外の

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

最近、この問題に関する投稿を書きました。こちらをご覧ください。

于 2012-05-28T11:47:46.143 に答える
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 応答にアクセスできるかどうか、またはどのようにアクセスできるかはわかりません. SOAP リクエストをアプリケーションに報告するのではなく、そこに送信します。

私が調査を開始したのは、動作を使用してこれを変更する方法です。この調査はあまり進んでいないので、実行可能かどうかはわかりません!

于 2009-11-17T17:55:02.890 に答える