查询在控制台中有效,但在外部无效
Query works in console, but not externally
我正在使用 MongoDB 的 Realm 云计算服务。
如标题所示,查询在控制台中运行良好,但在外部(通过 Postman)执行时却不行。
要点:
- 记录时,moviesList 在外部触发时为空,但在控制台中有数据。
- 我已经为 collection 设置了默认规则,提供 read/write 访问权限。
- 它 returns 外部结果为空,没有发现错误。
// Data can be extracted from the request as follows:
let qry = {}
if(query.year) {
qry = {"year": {$eq: parseInt(query.year)}}
console.log("year: " + query.year);
} else if (query.title) {
qry = {"title": {$eq : query.title}}
console.log("title: " + query.title);
} else {
console.log("NO PARAMETERS");
}
// Querying a mongodb service:
const doc = context.services.get("mongodb-atlas").db("sample_mflix").collection("movies");
let moviesList = doc.find(qry).limit(5).toArray();
let jsonList = JSON.stringify(moviesList);
// return jsonList;
if(response)
response.setBody(jsonList);
console.log(console.log("JSON: " + jsonList));
return jsonList;
控制台输出:
> ran at Tue Jan 18 2022 13:17:16 GMT+0200 (Eastern European Standard Time)
> took 323.632668ms
> logs:
NO PARAMETERS
JSON: [{"_id":"573a1390f29313caabcd4135","plot" ...
undefined
> result:
"[{\"_id\":\"573a1390f29313caabcd4135\",\"plot\" ...
不完全确定一个控制台日志下面的“未定义”是什么。
邮递员回复:
感谢任何帮助。谢谢!
看来是数据库的权限问题。
控制台显然为我提供了 root 权限,所以它可以正常工作。
API 失败了,但没有抛出任何错误(据我所知)。它只是返回一个空集。
我正在使用 MongoDB 的 Realm 云计算服务。
如标题所示,查询在控制台中运行良好,但在外部(通过 Postman)执行时却不行。
要点:
- 记录时,moviesList 在外部触发时为空,但在控制台中有数据。
- 我已经为 collection 设置了默认规则,提供 read/write 访问权限。
- 它 returns 外部结果为空,没有发现错误。
// Data can be extracted from the request as follows:
let qry = {}
if(query.year) {
qry = {"year": {$eq: parseInt(query.year)}}
console.log("year: " + query.year);
} else if (query.title) {
qry = {"title": {$eq : query.title}}
console.log("title: " + query.title);
} else {
console.log("NO PARAMETERS");
}
// Querying a mongodb service:
const doc = context.services.get("mongodb-atlas").db("sample_mflix").collection("movies");
let moviesList = doc.find(qry).limit(5).toArray();
let jsonList = JSON.stringify(moviesList);
// return jsonList;
if(response)
response.setBody(jsonList);
console.log(console.log("JSON: " + jsonList));
return jsonList;
控制台输出:
> ran at Tue Jan 18 2022 13:17:16 GMT+0200 (Eastern European Standard Time)
> took 323.632668ms
> logs:
NO PARAMETERS
JSON: [{"_id":"573a1390f29313caabcd4135","plot" ...
undefined
> result:
"[{\"_id\":\"573a1390f29313caabcd4135\",\"plot\" ...
不完全确定一个控制台日志下面的“未定义”是什么。
邮递员回复:
感谢任何帮助。谢谢!
看来是数据库的权限问题。
控制台显然为我提供了 root 权限,所以它可以正常工作。
API 失败了,但没有抛出任何错误(据我所知)。它只是返回一个空集。