3 Stimmen

HTTP Post Request: Zielserver hat nicht geantwortet

Hallo, Ich möchte eine einfache Android-App für die Liebe der letzten Titel zu bauen. Ich erhalte den Song mit user.getRecentTrack und sende die Daten und Sitzungsschlüssel an meine Methode, aber es gibt einen Fehler: "Der Zielserver hat nicht geantwortet." Manchmal gibt es auch den Fehler 3 von der lastfm-Methode: track.love: "Ungültige Methode - Keine Methode mit diesem Namen in diesem Paket". Dies ist mein Http Post Request für track.love

HttpClient client = new DefaultHttpClient(); 
String postURL = "http://ws.audioscrobbler.com/2.0/";;
HttpPost post = new HttpPost(postURL); 
List<NameValuePair> params = new ArrayList<NameValuePair>(2);
String signatur = makeTrackLoveSignatur(artist, title, key);
params.add(new BasicNameValuePair("method", "track.love"));
params.add(new BasicNameValuePair("track", title));
params.add(new BasicNameValuePair("artist", artist));
params.add(new BasicNameValuePair("api_key", api_key));
params.add(new BasicNameValuePair("api_sig", signatur));
params.add(new BasicNameValuePair("sk", key));
params.add(new BasicNameValuePair("format", "json"));

UrlEncodedFormEntity ent = 
new UrlEncodedFormEntity(params,HTTP.UTF_8);
post.setEntity(ent);

HttpResponse responsePOST = client.execute(post); 
InputStream data = responsePOST.getEntity().getContent();

Ich habe auch eine Methode convert InputStream to String implementiert:

BufferedReader reader = new BufferedReader(
                new InputStreamReader(stream));
        StringBuilder sb = new StringBuilder();

        String line = null;
        try {
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
            stream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println("Output"+sb.toString());
        return sb.toString();

Wo liegt das Problem? Danke...

1voto

Mike Punkte 2412

Versuchen Sie, die Kopfzeile Content-type hinzuzufügen:

post.addHeader("Content-type", "application/x-www-form-urlencoded");

Hier ist ein ähnliche Frage in Python .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X