2015-01-06 2 views
0

Я разрабатываю api, который возвращает URL-адрес изображения, который поступает от стороннего сервиса.Является ли ContentType image/* valid

Моя проблема заключается в том, что для всех средств массовой информации я использую то, что я называю «медиа-объектом»

{ 
"ConetetType": "image/jpeg", 
"href": "http://..." 
} 

Но служба третьей стороны не обеспечивает тип контента, только URL-адрес.

Является ли image/* ContentType действительным?

Я видел это упоминается в других вопросах, как this и this, но я не видел его в любом стандарте как rfc2045 и его нет в списке опций в Wikipedia.

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

Причина, по которой я использую «медиа-объект», заключается в том, что мы можем создавать видео в одном и том же поле, и эта информация очень полезна для воспроизведения видео и для разделения изображений с видео.

ответ

2

С технической точки зрения, нет.

image/* действителен только как шаблон для типов MIME, а не как тип MIME сам по себе. (Например, в HTTP Accept заголовки, image/* могут использоваться для приема любого файла изображения.) Поскольку, похоже, вы составляете свой собственный протокол здесь, все зависит от вас, допустимо ли это; просто не возвращайте его как Content-Type для объекта.

В любом случае, вы также можете захотеть запустить запрос HEAD по URL-адресу и получить от него реальный тип контента.

+0

Благодарим вас за подтверждение своих мыслей. Я пытался предотвратить запуск запроса «HEAD» по URL-адресу. Я могу закончить изменение поля ContentType в JSON на MediaType или просто поле «Тип», которое не имеет то же имя, что и HTTP Content-Type, и создайте собственный протокол. Я подожду еще немного, прежде чем принимать ответ, чтобы узнать, есть ли у кого-то еще больше информации. –