Heim > Backend-Entwicklung > PHP-Tutorial > Im Folgenden sind mehrere englische Titel aufgeführt, die zum Inhalt des Artikels passen und im Frage-Antwort-Format präsentiert werden: 1. Warum empfängt meine Android-App HTML- statt JSON-Daten von einem ByeHost-Server? 2. Wie behebe ich den Fehler „Überprüfe deinen Browser' beim Abrufen von JSON-Daten von?

Im Folgenden sind mehrere englische Titel aufgeführt, die zum Inhalt des Artikels passen und im Frage-Antwort-Format präsentiert werden: 1. Warum empfängt meine Android-App HTML- statt JSON-Daten von einem ByeHost-Server? 2. Wie behebe ich den Fehler „Überprüfe deinen Browser' beim Abrufen von JSON-Daten von?

Linda Hamilton
Freigeben: 2024-10-28 12:04:55
Original
657 Leute haben es durchsucht

以下是几个适合文章内容的英文标题,以问答形式呈现:

1. Why is my Android app receiving HTML instead of JSON data from a ByeHost server?
2. How do I fix the

ByeHost-Server sendet HTML-Werte „Überprüft Ihren Browser“ mit JSON-String

Frage:

Beim Versuch, eine JSON-Zeichenfolge an Android zu analysieren, werden HTML-Werte übergeben. Bis vor einem Tag funktionierte alles einwandfrei, aber als ich versuchte, die Datenbank mithilfe einer PHP-Datei abzurufen, stürzte meine Anwendung plötzlich ab.

Als ich nachgesehen habe, ist mir der HTML-Wert aufgefallen, siehe Logcat.

Antwort:

Die Lösung ist:

  1. Cookie zur HTTP-Anfrage hinzufügen:

ByeHost verwendet ein Antibots-Sicherheitsmodul namens testcookie-nginx-module. Dieses Modul führt eine zweistufige Überprüfung bei HTTP-Anfragen durch:

Schritt 1: Bei der ersten Anfrage gibt das Modul ein JavaScript zurück, das das Überprüfungscookie generiert.

Schritt 2: Bei nachfolgenden Anfragen fügt der Client das Authentifizierungscookie hinzu und das Modul überprüft den Cookie-AES-Schlüssel und lässt die Fortsetzung der Anfrage zu.

  1. Holen Sie sich den Cookie-Schlüssel und fügen Sie ihn der Android-Anfrage hinzu:
  • Verwenden Sie einen Webbrowser, um die URL einmal zu generieren, um sie zu generieren der Keks.
  • Rufen Sie den Wert von __test Cookie vom Webbrowser ab.
  • Fügen Sie in Android-Anwendungen Cookie-Header zu HTTP-Anfragen hinzu.
<code class="java">httpPost.addHeader("Cookie", "__test=THE_CONTENT_OF_YOUR_COOKIE_HERE; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/");</code>
Nach dem Login kopieren

Mit diesen Schritten fügt die Anwendung Cookies ein, um die Validierung zu bestehen und die erwarteten JSON-Daten können abgerufen werden.

Das obige ist der detaillierte Inhalt vonIm Folgenden sind mehrere englische Titel aufgeführt, die zum Inhalt des Artikels passen und im Frage-Antwort-Format präsentiert werden: 1. Warum empfängt meine Android-App HTML- statt JSON-Daten von einem ByeHost-Server? 2. Wie behebe ich den Fehler „Überprüfe deinen Browser' beim Abrufen von JSON-Daten von?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage