Google Script UrlFetchApp“方法”:“删除”不起作用

问题描述 投票:0回答:1

[我之前没有在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)

        }
     }
    }
    }
javascript google-apps-script urlfetch
1个回答
0
投票

您的请求的delete_options参数可能不是预期的参数。

此外,根据10,000 ft API documentationDELETE请求看起来像这样:

DELETE /api/v1/users/<user_id>/assignments/<assignment_id>

因此,如果您需要执行所需操作的令牌,可以将其包含在选项中,类似于以下内容:

var delete_options = {
        'method': 'delete',
        'contentType': 'application/json',
        'muteHttpExceptions': true,
        'headers': {
           'Authorization' : 'bearer'+TOKEN;
           'Accept' : 'application/json'
        }
};
© www.soinside.com 2019 - 2024. All rights reserved.