2014-10-06 2 views
1

나는 다양한 접근법을 시도했지만이 권리를 얻을 수 없습니다.클라우드 기능에 값을 전달하는 올바른 방법

클라우드 기능에 데이터를 전달할 때 클라우드 코드에서 데이터를 가져 오는 데 문제가 있습니다.

예 : 내가 얻을 수 request.body을 읽을 수

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

:

{"subject":"Re: Alarm"} 

그러나 읽기

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

는 클라우드 코드에서 함수에 다음과 같은 요청을 전달할 것인가 request.body.subject yiel ds undefined

PHP에서 Cloud 함수에 인수가 전달되는 예제를 찾을 수 없었으므로 현재 시행 착오 상태로 실행 중입니다. 당신의 JSON에서

+1

본문은 문자열입니다. ['JSON.parse (request.body)'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse) 또는 다음을 전송하는 함수를 사용할 수 있습니다. 대신 객체 – kero

+0

따옴표가 이스케이프 ('\ "')되어 있기 때문에'request.body'가 문자열이라는 것을 알 수 있습니다. – DanFromGermany

+0

PHP에서 JSON 인코딩을 시도했지만 서버에서 '잘못된 JSON'응답이 발생했습니다. 'JSON.parse (request.body)'시도해 보겠습니다. – cYrixmorten

답변

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

body는 JSON처럼 보이는 문자열을 보유하고 있습니다. JavaScript에 JSON.parse(request.body)을 사용하거나 본문을 객체로 보내는 PHP 메소드를 사용할 수 있습니다.

관련 문제