如何从客户端正确制作 Parse.com Parse.Cloud.httpRequest?

How-to correctly make a Parse.com Parse.Cloud.httpRequest from the client-side?

我想从我的 cloudcode 发出一个在我的客户端调用的 http 请求。

起初我觉得这有点令人困惑,所以希望这对您有所帮助。

在您的云代码中main.js

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

   //runs when Parse.Cloud.run("POSTfromCloud") on the client side is called
   Parse.Cloud.httpRequest({
        method: "POST",
        headers: {
          "X-Parse-Application-Id": "[PARSE_APP_ID]",
          "X-Parse-REST-API-Key": "[PARSE_REST_ID]",
          "Content-Type": "application/json"
       },

       //adds a new class to my parse data
       url: "https://api.parse.com/1/classes/newPOSTfromCloudClass/",


       body: {
               "newPOSTfromCloudClass": {"key1":"value1","key2":"value2"}
             },

       success: function (httpResponse) {
                console.log(httpResponse.text);
                response.success(httpResponse);
       },
       error:function (httpResponse) {
                console.error('Request failed with response code ' + httpResponse.status);
                response.error(httpResponse.status);
       }

    });  //end of Parse.Cloud.httpRequest()

});

在您的客户端。这可以放在任何语言的任何地方,只需使用 Parse.Cloud.run 调用您放置在云端的匹配 Parse.Cloud.define。您使用

Parse.Cloud.run('POSTfromCloud', {}, {
        success: function(result) {
          console.log("Posted a new Parse Class from Cloud Code Successfully! :"+ JSON.stringify(result))
        },
        error: function(error) {
        console.log("Oops! Couldn't POST from Cloud Code successfully..  :"+ error)
        }
      });
    }

你的结果:假设你的发布

(这里,如果你想删除这个新对象,你的 url 会像这样附加对象 ID /newPOSTfromCloudClass/60j1uyaBt

知道它不一定是 httpRequst 云函数。您可以在 definerun 函数中执行 "anything"。

注意: 也看到我在这个 here

中关于传递参数的其他相关问题