0

我需要删除一个事件,我所做的是将事件的 ID 保存在数据库中,然后使用该 url thttpid.delete 删除它,但我收到错误 402 禁止

Code= 'XXXXxxXXXxx' // ClientLogin code
URL:='https://www.google.com/calendar/feeds/XXXX%40gmail.com/private/full/XXXXo8aqjok24794auifouXXXX' // ID GOOGLE EVENT 


    function TForm4.DeleteGoogle(Code,URL:String): String;
    begin
          idHTTP2.IOHandler:=IdSSLIOHandlerSocketOpenSSL1;
          idHTTP2.Request.Connection  := 'Keep-Alive';
          idHTTP2.Request.ContentType := 'application/atom+xml';
          idHTTP2.Request.CustomHeaders.Values['GData-Version']:='2.0';
          idHTTP2.Request.CustomHeaders.Values['Authorization']:=('GoogleLogin Auth='+Code);
          try
            idHTTP2.Delete(URL);
          except on E: EIdHTTPProtocolException do
            idHTTP2.Delete(URL);
          end;
          //ID
             Result:=(IdHTTP2.Response.Location);
    end;

我需要删除此事件的 url 是什么?

4

2 回答 2

0

我需要添加标题“if-match”并添加标签值。这样做可以解决问题。

IdHTTP2.Request.CustomHeaders.Values['If-Match']:=tag;
于 2014-05-14T23:12:36.230 回答
0

您不能从 RSS 源中删除条目。Feed 是只读的,用于跨系统交换数据。您需要使用 Google 的日历 API 登录到实际日历,然后从那里删除所需的条目。

谷歌日历 API v1

删除事件


谷歌日历 API v3

活动

事件:删除

于 2014-05-14T19:46:45.943 回答