我之前没有使用过API中的Delete方法,但是我尝试了几次,并不影响通过API在系统上删除。
请注意,执行此操作时不会引发错误
我不知道如何去做,因为我已经尝试了代码的不同变体,但仍然没有从系统中删除数据。如果有人知道如何使用此方法,请提供帮助。
这是我的代码。
for (var i = 0; i<range.length; i++) {
if(range[i][0] == searchString) {
var lastRow = sheet.getRange(2+i,1,1,11).getValues();
//var user_id = sheet.getRange("I2:I" + sheet.getLastRow()).getValues();
var data ={
'hours_per_day':lastRow[0][6],
'starts_at':lastRow[0][7],
'ends_at': lastRow[0][7],
'user_id': lastRow[0][8],
'assignable_id':lastRow[0][9],
}
var delete_options = {
'method': 'DELETE',
'Content-Type': 'application/json',
};
var url = 'https://api.10000ft.com/api/v1/users/'+data.user_id+'/assignments/assignable_id='+ data.assignable_id+'&auth='+AUTH;
var response = UrlFetchApp.fetch(url, delete_options);
if (response.getResponseCode() === 200) {
var json = JSON.parse(response);
sheet.getRange(2+i, 11).setValue('Pass');
}
else {
sheet.getRange(2+i, 11).setValue('Fail');
Logger.log(data)
}
}
}
}
最佳答案
您请求的 delete_options
参数可能不是预期的参数。
此外,根据 10,000 ft API documentation ,DELETE
请求如下所示:
DELETE /api/v1/users/<user_id>/assignments/<assignment_id>
因此,如果您有所需操作所需的 token ,您可以将其包含在您的选项中,类似于以下内容:
var delete_options = {
'method': 'delete',
'contentType': 'application/json',
'muteHttpExceptions': true,
'headers': {
'Authorization' : 'bearer'+TOKEN;
'Accept' : 'application/json'
}
};
关于javascript - 谷歌脚本 UrlFetchApp “method” : “delete” not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60375751/