Поддержка OData $value с помощью пакетной обработки
Требуется руководство по поддержке значения OData $ в пакетном режиме. См. Пример и требования ниже:
Предположим, у меня есть объект, который говорит Customer и получает значение $ для следующих клиентов с ключом, используя отдельные вызовы GET:
ПОЛУЧИТЬ https://services.odata.org/V3/Northwind/Northwind.svc/Customers('ALFKI')/$value ПОЛУЧИТЬ https://services.odata.org/V3/Northwind/Northwind.svc/Customers('ANATR') / $value ПОЛУЧИТЬ https://services.odata.org/V3/Northwind/Northwind.svc/Customers('ANTON')/$value
Вышеупомянутые вызовы вернут контент в формате MIME.
Теперь, когда я делаю тот же самый набор для получения значения $ в пакетном вызове, я получал бы содержимое MIME одно за другим без какого-либо разделителя. Но мне нужно какое-то допустимое содержимое json, чтобы я знал, когда заканчивается первое значение $ и где начинается второе значение $.
Итак, в настоящее время ответ в пакетном режиме выглядит следующим образом:
MimeContent для клиента1 MimeContent для клиента2 MimeContent для клиента3
Как видите, нам нужно проанализировать mime-контент и посмотреть, где заканчивается контент первого клиента 1, а затем сделать это для оставшегося клиента. Это неэффективно и подвержено ошибкам. Итак, что нам нужно в случае пакетного вызова, это следующее:
{{MimeContent для Customer1}, {MimeContent для Customer2}, {MimeContent для Customer3}}
Если у нас есть допустимая конструкция json при получении пакетного значения $, было бы легко определить значение $ для клиента 1 по сравнению с клиентом 2.
Требуется руководство о том, как реализовать это с помощью odata lib с эффективным использованием памяти. $value - это mime-контент и занимает много места в памяти, поэтому нам нужен способ реализовать какую-то задержку потоковой передачи, чтобы нам не нужно было хранить все $value в памяти.
Есть ли какие-либо рекомендации от Odatalib для поддержки вышеуказанных требований? Любое руководство было бы отличным и полезным.
Спасибо.