Специфичный для поставщика MIME в качестве Content-Type во входящем запросе WCF REST POST (например, application / vnd.company + xml) - PullRequest
3 голосов
/ 01 ноября 2011

Мне трудно найти решение для того, чтобы входящий POST-запрос попал в мою декларацию сервиса, если в качестве Content-Type запроса не задан общий «application / xml» или «application / json»:

Поскольку мы используем пользовательские типы MIME, например, "application / vnd.company + xml", это действительно должно быть значение заголовка Content-Type. Но очевидно, что WCF не может извлечь из этого формат запроса. Кто-нибудь знает решение для этого?

Короче говоря: я бы хотел

Content-Type: application/vnd.company+xml, and
Content-Type: application/vnd.company+json

для сопоставления входящего запроса POST с XML и JSON соответственно, но на данный момент служба будет отвечать только тогда, когда я выполню запрос POST с

Content-Type: application/xml, or
Content-Type: application/json

Платформа .NET4 и WCF.

1 Ответ

1 голос
/ 02 ноября 2011

Используйте WCF Web API вместо WCF REST.Одним из основных преимуществ является то, что он дает вам гибкость в использовании любого типа медиа.

Если вы действительно застряли с WCF REST в .net 4, измените параметр запроса на тип потока.Это позволит вам размещать любые данные, которые вы хотите.Вам нужно будет самостоятельно позаботиться о десериализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...