Ich bin neu in der Web-API und muss einen Server für einen Client erstellen. Ich habe keine Kontrolle über den Kunden - kann nichts ändern.
Der Client sendet eine html-verkapselte JSON-Anfrage in einem POST-Body. Der Inhaltstyp kann jedoch variieren. Was muss ich tun, damit mein ApiController verschiedene Inhaltstypen verarbeiten kann?
Web Api unterstützt den Mechanismus Content Negotiation , um automatisch den korrekten Formatierer basierend auf dem Header Content-Type
in der HTTP-Anfrage auszuwählen.
Standardmäßig unterstützt die Inhaltsverhandlung drei Formatierer: json
, xml
und form-urlencoded data
. Wenn kein Formatierer gefunden wird, erhält der Client den HTTP-Fehler 406 (Not Acceptable).
Siehe mehr:
Wenn Sie der Web-API-Unterstützung ein weiteres Content-Type
erlauben müssen, können Sie Ihren eigenen benutzerdefinierten Formatierer schreiben:
Tags und Links asp.net-web-api c# content-type