Immer eine UTF-8-Antwort mit httpclient in Windows Store-apps

Ich bin erstellen einer Windows Store-app, aber ich bin stecken auf immer ein UTF-8-Antwort von einer API.

Dies ist der code:

using (HttpClient client = new HttpClient())
{
    Uri url = new Uri(BaseUrl + "/me/lists");

    HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, url);
    request.Headers.Add("Accept", "application/json");
    HttpResponseMessage response = await client.SendRequestAsync(request);
    response.EnsureSuccessStatusCode();

    string responseString = await response.Content.ReadAsStringAsync();

    response.Dispose();
}

Den reponseString enthält immer seltsame Zeichen, die sollte Akzenten wie é, und ich habe versucht, mit einem stream, aber die API fand ich in einigen Beispielen nicht vorhanden sind in Windows RT.

Edit: code verbessert, immer noch dasselbe problem.

  • Sind Sie völlig sicher API, die Sie aufrufen, Griffe nicht-ASCII-text korrekt? (schwer zu erraten, aus dem code, was Sie nennen)
  • Es ist nicht klar, was das problem ist, das du da beschreibst. Erwartest du einen UTF-8-Antwort? Ist der server sendet einen? Können Sie schlagen den web service direkt mit Fiddler sehen, was es zurück?
  • Ist der Content-Type-header der Antwort auf den korrekten Wert gesetzt? Haben Sie versucht, die Methode _client.GetStringAsync(url)?
  • Ja, in der Chrome-REST-Konsole bekomme ich einen guten UTF-8-Antwort, die Akzente sind, wo Sie sein sollten.
  • Ich weiß nicht, wie Fiddler für HTTPS-Anfragen. Aber in der Chrom-REST-Konsole sehe ich ein UTF-8-Antwort.
  • Das versucht. Gleiches problem :/
  • Sind Sie vielleicht anrufen, eine REST-api .NET standard dll, auf die verwiesen wird, die von UWP? Keine der Antworten hier haben mir geholfen. Der eine markiert die Antwort definitiv nicht helfen.

InformationsquelleAutor Sam Debruyn | 2014-03-26
Schreibe einen Kommentar