ホームページ >バックエンド開発 >PHPチュートリアル >以下に、記事の内容に適したいくつかの英語のタイトルを質疑応答形式で示します。 1. Android アプリが ByeHost サーバーから JSON データではなく HTML データを受信するのはなぜですか? 2. JSON データを取得するときに発生する「ブラウザを確認しています」エラーを修正するにはどうすればよいですか?
ByeHost サーバーが JSON 文字列で「ブラウザを確認しています」という HTML 値を送信する
質問:
Android に JSON 文字列を解析しようとすると、HTML 値が渡されます。 1 日前まではすべて正常に機能していましたが、PHP ファイルを使用してデータベースを取得しようとすると、突然アプリケーションがクラッシュし始めました。
確認したところ、HTML 値に気づきました。logcat を参照してください。
答え:
解決策:
ByeHost は、testcookie-nginx-module と呼ばれるアンチボット セキュリティ モジュールを使用します。このモジュールは、HTTP リクエストに対して 2 段階の検証を実行します:
ステップ 1: 最初のリクエストで、モジュールは検証 Cookie を生成する JavaScript を返します。
ステップ 2: 後続のリクエストでは、クライアントは認証 Cookie を追加し、モジュールは Cookie AES キーを検証してリクエストの続行を許可します。
<code class="java">httpPost.addHeader("Cookie", "__test=THE_CONTENT_OF_YOUR_COOKIE_HERE; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/");</code>
これらの手順により、アプリケーションには検証に合格するための Cookie が含まれ、期待される JSON データを取得できるようになります。
以上が以下に、記事の内容に適したいくつかの英語のタイトルを質疑応答形式で示します。 1. Android アプリが ByeHost サーバーから JSON データではなく HTML データを受信するのはなぜですか? 2. JSON データを取得するときに発生する「ブラウザを確認しています」エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。