Похоже, что интерфейс REST (скорее всего, для безопасности), автоматически экранирует пропущенные поля, и что встроенные запросы невозможны. Это означает, что оба метода для передачи в требуемом формате URL, похоже, исключены. Например:
db.collection.find({"url" : /acko.*/i})
Теоретически это будет означать:
http://127.0.0.1:28017/databaseName/collectionName/$cmd/?filter_url=/acko.*/i
К сожалению, это фактически передается как (обратите внимание на кавычки):
{ "url" : "/acko.*/i" }
Есть аналогичные проблемы с другой формой, когда вы передаете команду $ regex как внедренный документ. Эта и другие проблемы являются причиной того, что встроенный интерфейс REST не является рекомендуемым решением для выполнения запросов к mongoDB. Вместо этого вы должны посмотреть на Sleepy Mongoose ) или node.js
Я знаю, что вы не хотели использовать другой интерфейс, но иногда это действительно лучший вариант.