com.parse.ParseException: 在 ParseCloud 中找不到函数

com.parse.ParseException: function not found in ParseCloud

所以这是我云端的 main.js 文件:

Parse.Cloud.define("addChannelToUser",function(request,response)){

var userId = request.params.userId;
var listId = request.params.listId;

var User = Parse.Object.extend("User"),
    user = new User({ objectId: userId });

    user.add("channels",listId);

     Parse.Cloud.useMasterKey();
        user.save().then(function(user) {
        response.success(user);
        }, function(error) {
            response.error(error)
    });
});

这是我在我的应用程序中调用它的地方:

  ParseCloud.callFunctionInBackground("addChannelToUser",params,
   new FunctionCallback<Object>() {
  @Override
     public void done(Object o, ParseException e) {
     if(e != null){
     Log.d("cloud error", e.toString());
     }else{
      Log.d("cloud", "success");
     }
     }
   });

我的目标是将 lisId 添加到具有 userId 的用户的 "channel" 字段中。 当然这个用户不是登录设备的用户所以我显然需要使用主密钥...

无论如何,我一直收到错误 "function not found",请帮助我:)

我只是将您的代码复制到我的 main.js 文件中,然后尝试将代码部署到 Parse Cloud。但是,Parse 会给我生成一个语法错误,我按如下方式更正;

Parse.Cloud.define("addChannelToUser",function(request,response)
{

var userId = request.params.userId;
var listId = request.params.listId;

var User = Parse.Object.extend("User"),
user = new User({ objectId: userId });

user.add("channels",listId);

 Parse.Cloud.useMasterKey();
    user.save().then(function(user) {
    response.success(user);
    }, function(error) {
        response.error(error)
    });
});

你可以把错误的地方提取出来。云函数在 Parse 环境中进行测试。这是工作。希望这有帮助。

此致。