2014-10-06 55 views
1

我尝试了各种方法,但似乎无法获得此权限。将值传递给云功能的正确方法

当我将数据传递给云功能时,我无法在云代码中检索它们。

例子:

ParseCloud::run('addAlarm', ['subject' => $subject]); 

将通过以下请求在云代码的功能:

{"body":"{\"subject\":\"Re: Alarm\"}","params":{"subject":"Re: Alarm"},"installationId":"","user":null,"master":false} 

我可以阅读request.body获得:

{"subject":"Re: Alarm"} 

但阅读request.body.subject yiel ds undefined

我无法找到任何将参数传递给PHP中的云功能的示例,因此我目前正在试验和错误中运行。

+1

你的身体是一个字符串。你可以['JSON.parse(request.body)'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse)或者使用一个函数发送一个对象代替 – kero 2014-10-06 10:51:56

+0

你可以看到'request.body'是一个字符串,因为引号被转义('\“') – DanFromGermany 2014-10-06 10:53:56

+0

你是对的,在PHP中尝试编码为JSON但导致服务器发出'无效JSON'响应。将尝试'JSON.parse(request.body)' – cYrixmorten 2014-10-06 10:56:07

回答

2
"body":"{\"subject\":\"Re: Alarm\"}" 

在你的JSON关键body持有字符串看起来像JSON。您可以在您的JavaScript中使用JSON.parse(request.body)或使用将方法作为对象发送的PHP方法。

相关问题