Текущее время: Пт, мар 29 2024, 01:02

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Media-related entity
СообщениеДобавлено: Пн, фев 11 2019, 13:53 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 181
Пол: Мужской
Добрый день, коллеги!

Может быть сталкивался кто:
Как вернуть valid odata response на фронтенд из media-related ентити?
делаю запрос oDataModel.read( path, params ) к ентити объявленной как media.
Запрос приходит в бек в get_stream, генерирую бинарик файла, отдаю его в er_stream.
Все хорошо, но когда файла нет, или он не сгенерировал, выходной параметр er_stream соответственно пустой, а там только параметры mime_type и value.
Как сообщить фронту о том что файла нет? Если отправить пустой er_stream, на фронте будет вышеуказанная ошибка ( no valid odata response )

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Media-related entity
СообщениеДобавлено: Пн, фев 11 2019, 14:23 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Странно, не помню таких проблем.

Если Вас правильно понял, то запрос приходит в DPC_EXT класс в метод /IWBEP/IF_MGW_APPL_SRV_RUNTIME~GET_STREAM
Дальше Вы, достаете бинарник откуда-нибудь и укладываете его в er_stream.

Возможно, у нас на JS как то обрабатывают такой кейс когда нет файла. Но в целом, если файла нет, оставляем er_stream и все.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Media-related entity
СообщениеДобавлено: Пн, фев 11 2019, 14:28 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 181
Пол: Мужской
Да, все правильно.
На фронте в oDataModel.read я прикрепил хендлеры на success и error, запрос возвращается в еррор-хендлер
Code:
_btnHandleOk: function( oData, oResponse ) {
},

_btnHandleError: function( oData, oResponse ){
},

и чтобы я ни делал внутри, после этого возникает ошибка.

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Media-related entity
СообщениеДобавлено: Пн, фев 11 2019, 14:39 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, июн 19 2012, 08:33
Сообщения: 181
Пол: Мужской
До этого я просто делал валидную ссылку на JS для запроса к ентити:
ServiceUrl + /entityname(keys)/&value

Но я не нашел возможности подвесить через sap.m.URLHelper.redirect( url ) какие-либо хендлеры. А они нужны, чтобы считать лог журнала.

_________________
crusty написал(а):
Логистика - понятие растяжимое


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Media-related entity
СообщениеДобавлено: Вс, мар 03 2019, 00:26 
Модератор
Модератор

Зарегистрирован:
Пн, июн 27 2011, 08:25
Сообщения: 475
Orgazm написал:
До этого я просто делал валидную ссылку на JS для запроса к ентити:
ServiceUrl + /entityname(keys)/&value

Но я не нашел возможности подвесить через sap.m.URLHelper.redirect( url ) какие-либо хендлеры. А они нужны, чтобы считать лог журнала.


1ым вызовом проверяете существоание/полномочия/доступность и сообщаете что угодно пользователю
2ым вызовом гарантировоно запрашиваете существующий файл

PS. а про лог какого журнала идет речь?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB