Fehler im Volley-Patch

7

com.android.volley.NoConnectionError: java.net.ProtocolException: Unbekannte Methode 'PATCH'; muss einer von [OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE] sein

%Vor%     
sreejith 04.02.2015, 05:33
quelle

2 Antworten

20

Sind Sie sicher, dass Sie die richtige Version von Volley Library verwenden? Ich habe gerade Ihren Code in Lollipop ausprobiert und es funktioniert OK. Wenn Sie die Volley-Bibliothek als externes Projekt verwenden, überprüfen Sie die Schnittstelle Methode der Klasse Request im Paket com.android.volley. Es sollte eine PATCH-Variable enthalten.

%Vor%

Wenn nicht, verwenden Sie die neueste Version der Volley-Bibliothek.

UPDATE:

Sie haben Recht, es zeigt diesen Fehler in Kitkat, aber nicht in Lollipop. Ich denke, das Hauptproblem ist, dass HTTPUrlConnection von Java PATCH nicht unterstützt. (Ich denke, es funktioniert in Lollipop, weil es Java 7 verwendet und HTTPUrlConnection von Java 7 unterstützt PATCH-Methode?) Wie auch immer, Sie können die OkHttp-Bibliothek verwenden, um dieses Problem zu beheben. Das okhttp-urlconnection-Modul implementiert die java.net.HttpURLConnection

Fügen Sie Ihrem libs-Ordner das folgende jar hinzu:
okhttp -2.2.0.jar
okhttp-urlconnection -2.2.0.jar
okio-1.2.0.jar

Erstellen Sie eine OkHttpStack-Klasse:

%Vor%

Verwenden Sie den folgenden Konstruktor, um eine Volley RequestQueue zu erstellen:

%Vor%

Es funktioniert jetzt für mich auf Kitkat.

    
User31689 04.02.2015, 06:11
quelle
-1

Während des Sendens der Anfrage verwenden Sie POST. Überschreibe einfach die HTTP-Methode in PATCH. Für mich funktioniert es jetzt auch in der Kitkat-Version.

%Vor%     
user3918920 21.11.2016 10:14
quelle

Tags und Links