@@ -59,6 +59,12 @@ public function countAction($databaseName, $collectionName) : Response {
5959 return new Response (400 , 'Request body is invalid. ' );
6060 }
6161
62+ if ( isset ($ decodedRequestBody ['filter ' ]['_id ' ])
63+ && is_string ($ decodedRequestBody ['filter ' ]['_id ' ]) ) {
64+ $ decodedRequestBody ['filter ' ]['_id ' ] =
65+ new \MongoDB \BSON \ObjectId ($ decodedRequestBody ['filter ' ]['_id ' ]);
66+ }
67+
6268 $ count = $ collection ->countDocuments ($ decodedRequestBody ['filter ' ]);
6369
6470 return new Response (
@@ -88,6 +94,12 @@ public function deleteOneAction($databaseName, $collectionName) : Response {
8894 return new Response (400 , 'Request body is invalid. ' );
8995 }
9096
97+ if ( isset ($ decodedRequestBody ['filter ' ]['_id ' ])
98+ && is_string ($ decodedRequestBody ['filter ' ]['_id ' ]) ) {
99+ $ decodedRequestBody ['filter ' ]['_id ' ] =
100+ new \MongoDB \BSON \ObjectId ($ decodedRequestBody ['filter ' ]['_id ' ]);
101+ }
102+
91103 $ deleteOneResult = $ collection ->deleteOne ($ decodedRequestBody ['filter ' ]);
92104
93105 return new Response (
@@ -119,6 +131,12 @@ public function findAction($databaseName, $collectionName) : Response {
119131 return new Response (400 , 'Request body is invalid. ' );
120132 }
121133
134+ if ( isset ($ decodedRequestBody ['filter ' ]['_id ' ])
135+ && is_string ($ decodedRequestBody ['filter ' ]['_id ' ]) ) {
136+ $ decodedRequestBody ['filter ' ]['_id ' ] =
137+ new \MongoDB \BSON \ObjectId ($ decodedRequestBody ['filter ' ]['_id ' ]);
138+ }
139+
122140 $ documents = $ collection ->find (
123141 $ decodedRequestBody ['filter ' ], $ decodedRequestBody ['options ' ]
124142 )->toArray ();
0 commit comments