Parse.Cloud.play无法找到功能

时间:2015-10-19 18:06:36

标签: javascript android parse-platform push-notification httprequest

我认为我在.play()函数中误解了一些东西。我花了好几天试图解决这个问题。

我在main.js中有一个函数的Define设置。

var pvp_module = require('cloud/otherCode.js');
function pushBattleMessage_sum(request, response)
{
    pvp_module.PushNotification_BattleMessageExport(request, response);
}

Parse.Cloud.define("PushNotification_BattleMessage", pushBattleMessage_sum);

这将它发送到另一个运行代码的otherCode.js。在该代码中,我需要调用第二个云函数。

function PushNotification_BattleMessage(request, response)
{

    Parse.Cloud.run("push_httpRequest",{request},
    {
        sucess: function(results) 
        {
          response.success(results);
        },
        error: function(error) 
        {
          response.error(error);
        }
    });
}

第二个云功能在main.js

中定义
Parse.Cloud.define('push_httpRequest',function(request)
{
  Parse.Cloud.httpRequest(
  {
    url: 'http://www.parse.com/',
    success: function(httpResponse) 
    {
      console.log(httpResponse.text);
    },
    error: function(httpResponse) 
    {
      console.error('Request failed with response code ' + httpResponse.status);
    }
  });
});

我在网上找到的所有内容都告诉我这应该有效但在我的testharness html中我总是收到错误"未捕获的ReferenceError:push_httpRequest未定义"

此代码的目的是Android要求声明推送通知图标必须为黑白。我无法使用服务器端解析来初始化该更改,因此我们通过httpRequest为GCM设备提供推送通知。如果我能够获得第一个Cloud函数来找到第二个函数,我应该能够将所有这些完全结合在一起。

1 个答案:

答案 0 :(得分:0)

就我在文档中看到的而言,define对象的Parse.Cloud方法需要一个应该采用两个参数的函数。您的函数push_httpRequest未正确定义。来自Parse documentation

  

define( name, func )

     

定义云功能。

     

仅适用于Cloud Code。参数:

     
      
  • 名称<String>   云功能的名称
  •   
  • func <Function>
      要注册的云功能。此函数应采用Parse.Cloud.FunctionRequestParse.Cloud.FunctionResponse
  • 这两个参数