在另一个Parse应用程序中从一个Parse应用程序调用Cloud Call

时间:2014-08-01 20:10:48

标签: javascript xmlhttprequest parse-platform httprequest

我需要通过Rest API从另一个解析应用程序的云中调用一个解析应用程序中的云调用。

为此,我现在有了这个代码。但是,我总是得到错误:com.parse.ParseException:ReferenceError:在main.js:12:20中没有定义XMLHttpRequest。 (该行指的是初始化XMLHttpRequest的行)。我的代码是:

var url = "https://api.parse.com/1/functions/signUp";

var myObj = new Object();
myObj.age = 45;
myObj.email = "test@gmail.com";
myObj.password = "testpw";

var client = new XMLHttpRequest();
client.open("POST", url);
client.setRequestHeader("Content-Type", "text/plain;charset=UTF-8");
client.setRequestHeader("X-Parse-Application-Id", "xxx");
client.setRequestHeader("X-Parse-REST-API-Key", "xxx");
client.send(JSON.stringify(myObj));

由于此代码在Parse云中执行,我认为问题在于XMLHttpRequest未正确构造。可能是吗?

Parse是否可以通过来自另一个解析应用程序的云中的rest-api从解析应用程序调用云调用?

1 个答案:

答案 0 :(得分:1)

您可以使用Parse.Cloud.httpRequest()

进行http通话
Parse.Cloud.httpRequest({
  url: 'https://api.parse.com/...',
  headers: {
    'Content-Type':'application/json',
    'X-Parse-Application-Id':'...',
    'X-Parse-REST-API-Key':'...'
  },
  method: 'POST',
  body: JSON.stringify(myObj)
}).then(function(response) {
  console.log(response);
}, function(err) {
  console.log(err);
});

试一试。 re:https://parse.com/docs/cloud_code_guide#networking

你可以跳过JSON stringify并传递myObj。