[英]How to use POST and GET request to PARSE platform REST API using Google Apps Script
在使用 API 时,我是一个初学者,最近我花了很多时间尝试使用 Parse Platform API 将它与我的 Google 电子表格同步。 我正在努力使用UrlfetchApp格式化我的GET
或POST
请求。 如何使用 Google Apps 脚本向 PARSE 平台 REST API 发出 POST 和 GET 请求?
现在我成功了,我只想分享我的脚本,以便它可以帮助其他人。 请参阅下面我自己的答案
基本上,我做了2个程序:
var API_KEY = 'Insert Here your API KEY';
var applicationId = 'Insert here your application Id';
function InsertIntoParse(Method, Class, Script) {
var root =
'http://ec2-99-999-999-99.us-east-2.compute.amazonaws.com:80/parse';
var endpoint = '/classes/' + Class;
if (Method == 'POST') {
endpoint = endpoint + '/';
} else if (Method == 'GET') {
var GetScript = Script;
Script = '';
endpoint = endpoint + '?' + GetScript;
}
var params = {
method: Method,
muteHttpExceptions: true,
headers: {
'Content-Type': 'application/json',
'X-Parse-Application-Id': applicationId,
'X-Parse-REST-API-Key': API_KEY,
},
payload: Script,
};
var response = UrlFetchApp.fetch(root + endpoint, params);
//var data = response.getContentText();
//var json = JSON.parse(data);
//var campaigns = json['campaigns'];
Logger.log('response = ' + response);
return response;
}
以下是一些解释:
请注意,如果您发送了一个带有负载的 GET 请求,parse 会将其视为 POST 并将在您的类中创建一个新元素。
这是为 GET 请求调用“InsertIntoParse”的第二个程序:
function GetExample() {
var obj='{"fam_commune":"ANTIBES"}'
var scriptGetFamille = 'where='+encodeURIComponent(obj);
var retourGetFamille=InsertIntoParse('GET','MyClassName',scriptGetFamille);
var JSONresponse = JSON.parse(retourGetFamille.getContentText());
}
一些解释:
现在让我们看一个 POST 的例子:
function AddAdherent(NumLigne) {
scriptFamille="{\"MyColumnName1\": \"MyValueForColumn1\",\"MyColumnName2\": \"MyValueForColumn2\"}"
var retourFamille=InsertIntoParse('POST','MyCustomClassName',scriptFamille);
var JSONresponse = JSON.parse(retourFamille.getContentText());
var fam_cd=JSONresponse.objectId;
}
以下是一些解释:
PS:请注意,我上面的示例远非完美,特别是因为我没有使用 https 连接(我还没有在我的 Parse Platform Server 上设置 https,这是数据交换安全所必需的)
我希望所有这些都可以帮助人们并使您的生活更轻松。 祝你好运 !
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.