1

get + post リクエストを処理する API がありますが、企業ネットワークの背後で接続しているユーザーがアプリ内で認証できないというバグの報告がありました。

基本的に何が起こるかは、ユーザーが投稿要求 (ユーザー名 + パスワード) を API に送信し、API が json の結果で応答することです。

ただし、ネットワークは、最初の要求が Web サーバー経由でリダイレクトされ、次のような html メッセージで応答するようにトラフィックを形成しています。

<HTML>
<HEAD>
<TITLE> Web Authentication Redirect</TITLE><META http-equiv="Cache-control" content="no-cache">
<META http-equiv="Pragma" content="no-cache"><META http-equiv="Expires" content="-1"><META http-equiv="refresh" content="1; URL=https://wirelessauth.login.html?redirect=bla.co.uk/android/api/auth">
</HEAD>
</HTML>

これは通常、ブラウザーを正しいページにリダイレクトしますが、Android アプリ内でこれを処理する方法がわかりませんか?

これはおそらく泥のように明らかですが、助けてくれてありがとう:)

アンディ

4

2 に答える 2

0

最善の解決策は、ネットワーク管理者とリダイレクトの例外について交渉することだと思いますが、これを回避する方法をハックしてみることができます。

  • httpの投稿を作成し、予想されるエラーまたは応答の1つが得られない場合は、loadDataWithBaseUrlを使用してWebViewに応答をロードしてみて( loadDataを使用しないでください。壊れています!)、WebViewにリダイレクトを処理させます。Webビューは、作業を行うために表示されている必要はありません。Webviewコールバックを使用して、リダイレクト後に返される応答またはページをインターセプトし、WebViewの外部で適切に解析/処理します。
于 2012-08-20T14:32:24.027 に答える
0

デバイスのワイヤレス接続が認証されていないか、インターネット サービス プロバイダーが機能していません。Web を参照してから、もう一度お試しください。

于 2015-03-05T17:33:36.807 に答える