Я хочу получить доступ к GridFS из моего приложения C ++.
Я обнаружил, что есть два API C ++ для MongoDB: современный mongocxx-3 и устаревший mongocxx-1.
Mongocxx-1 содержит некоторые классы для работы с GridFS (например, GridFile), но современный API этого не делает.
Есть ли способ использовать gridfs из современного API?
Драйвер C ++ 11 в настоящее время не имеет специального API для GridFS, хотя мы добавляем его для выпуска (3.2.0). В то же время можно вручную запрашивать коллекции файлов и блоков для ваших групп GridFS через API коллекции, хотя его использование для вставки новых файлов и документов блоков является довольно сложным и, вероятно, не стоит затраченных усилий. Поскольку все поддерживаемые драйверы хранят файлы GridFS в базе данных одинаково, вы всегда можете вставить документы с другим драйвером и запросить их вручную с помощью драйвера C ++. (После выхода версии 3.2.0 вы также сможете читать файлы GridFS, хранящиеся в другом драйвере с API-интерфейсом драйвера C ++).
Других решений пока нет …