【发布时间】:2018-08-29 16:08:09
【问题描述】:
我正在尝试从 iOS 客户端调用 Parse Cloud 函数,但 response.success() 函数似乎为空。我收到一条错误消息,说 response.success 不是服务器上的函数。
这是我的 Parse Cloud 函数:
Parse.Cloud.define("pruebaQuery", function(request, response) {
const query = new Parse.Query("grupo");
query.equalTo("name", request.params.grupoName);
query.find()
.then((results) => {
for (let i = 0; i < results.length; ++i) {
var grupoId = results[i].get("grupoId");
console.log("GrupoId: " + grupoId);
}
response.success("Success pruebaQuery");
})
.catch(() => {
response.error("grupo lookup failed");
});
});
这就是我从 iOS 客户端调用它的方式:
[PFCloud callFunctionInBackground:@"pruebaQuery" withParameters:@{@"grupoName": @"Kinder 3"}
block:^(NSString *object, NSError *error) {
if (!error) {
NSLog(@"CLOUDCode/SUCCESS: %@", object);
}
else {
NSLog(@"CLOUDCode/ERROR %@ code: %ld", error, (long)[error code]);
}
}];
response.success() 函数不起作用的任何线索?
【问题讨论】:
-
您使用的是最新版本的 parse-server (3.0) 吗?他们改变了它,所以没有回应。
-
就是这样。非常感谢!
-
这是一个非常显着的变化,会导致很多以前的问题/答案不正确。不过,移植并不广泛,您应该能够弄清楚。云迁移指南:github.com/parse-community/parse-server/blob/master/3.0.0.md JS 迁移指南:github.com/parse-community/Parse-SDK-JS/blob/master/2.0.0.md Parse.Promise 已弃用,取而代之的是原生 Promises + async/await。
标签: node.js parse-platform parse-server parse-cloud-code