我想从我的云代码发出一个 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)
}
});
}
(如果您想删除这个新对象,您的网址将附加对象 ID,如下所示 /newPOSTfromCloudClass/60j1uyaBt
)
知道它不一定是 httpRequst 云函数。您可以在 define
和 run
函数中执行“任何操作”。
注意:还看到了我在这个 here 中传递参数的其他相关问题。
关于parse-platform - 如何从客户端正确创建 Parse.com Parse.Cloud.httpRequest?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33589094/