Поддержка 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 для поддержки вышеуказанных требований? Любое руководство было бы отличным и полезным.

Спасибо.

0 ответов

Другие вопросы по тегам