0

我无法确定如何删除给定ID的Google网站。我想我需要为该网站创建SiteEntry,并调用delete()方法,但不知道如何仅使用该ID创建SiteEntry如何通过ID删除Google网站

这是我正在创建的网站:

SitesService client = new SitesService("domain-AppName-v1"); 
client.setUserCredentials("[email protected]", "password"); 

//Define Site 
SiteEntry entry = new SiteEntry(); 
entry.setTitle(new PlainTextConstruct("Accounting 001")); 
entry.setSummary(new PlainTextConstruct("Accounting 001")); 

entry.getCategories().add(new Category(TagCategory.Scheme.TAG, "Course Sessions", null)); 

//Create the site 
SiteEntry result = client.insert(new URL("https://sites.google.com/feeds/site/domain.com/"), entry); 

//This Delete does not work 
result.delete(); 

//Trying to setup the id in a SiteEntry, it doesn't work either 
SiteEntry e = new SiteEntry(); 
e.setId(result.getId()); 
e.delete(); 

回答

1

事实证明,这是一个愚蠢的问题。

首先,https://developers.google.com/google-apps/sites/faq#DeleteSite声明API不支持删除站点,并且必须通过Web面板手动删除它们。这真的很糟糕,因为我目前有数百个使用API​​创建的站点,并且它是一个手动删除它们的麻烦:-(

其次,siteEntry.delete()抛出一个异常说“删除未实现”, 。

SitesService client = <initialize the service> 
SiteEntry site = client.getEntry(new URL(siteID), SiteEntry.class); 
:所以我补充说,在这个问题代码工作

最后,检索SiteEntry你必须做这样的时候是错误的