Die Verwendung der neueren ASP.NET Web API , in Chrom Ich sehe XML - wie kann ich es in eine Anfrage ändern? JSON damit ich sie im Browser anzeigen kann? Ich glaube, es ist nur ein Teil der Anfrage-Header, bin ich damit richtig?
Antworten
Zu viele Anzeigen?Verwendung von Felipe Leusin Nach einer kürzlichen Aktualisierung der Kernbibliotheken und von Json.Net stieß ich auf ein System.MissingMethodException
:UnterstützteMediaTypes. Die Lösung in meinem Fall, hoffentlich hilfreich für andere, die die gleiche unerwartete Ausnahme erleben, ist die Installation von System.Net.Http
. NuGet entfernt es offenbar unter bestimmten Umständen. Nach einer manuellen Installation war das Problem behoben.
WebApiConfig ist der Ort, an dem Sie konfigurieren können, ob Sie die Ausgabe in json oder xml wünschen. Standardmäßig ist es xml. In der Registerfunktion können wir HttpConfiguration Formatters verwenden, um die Ausgabe zu formatieren.
System.Net.Http.Headers => MediaTypeHeaderValue("text/html")
ist erforderlich, um die Ausgabe im json-Format zu erhalten.
De MSDN Erstellen einer einseitigen Anwendung mit ASP.NET und AngularJS (ca. 41 Min.).
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// ... possible routing etc.
// Setup to return json and camelcase it!
var formatter = GlobalConfiguration.Configuration.Formatters.JsonFormatter;
formatter.SerializerSettings.ContractResolver =
new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver();
}
Es sollte aktuell sein, ich habe es ausprobiert und es hat funktioniert.
Ich bin erstaunt, dass so viele Antworten die Änderung eines einzigen Anwendungsfalls (GET) in un API zu verwenden, anstatt ein geeignetes Tool zu benutzen, das einmal installiert werden muss und für mehrere Jahre verwendet werden kann. jede API (eigene oder Drittanbieter) und alle Anwendungsfälle.
Die gute Antwort lautet also:
- Wenn Sie nur json oder einen anderen Inhaltstyp anfordern möchten, installieren Sie Auf Anfrage oder ein ähnliches Tool und ändern Sie den Accept-Header.
- Wenn Sie auch POST verwenden und schön formatierte json, xml usw. haben wollen, verwenden Sie eine geeignete API-Testerweiterung wie Postbote o ARC .
- See previous answers
- Weitere Antworten anzeigen