AppScript如何串聯BloggerAPI
UrlFetchApp.fetch
這個物件與函數是呼叫BloggerAPI的方法。
因為BloggerAPI V3並不支援套件(即使是同為Google官方自己的服務),必須要使用URL API。
BloggerAPI使用的方式邏輯主要是....
[Blogger API URL] + / + [BloggerID] + / + [Blogger API code] + / + [BloggerPostID]
一般公開使用Blogger看到的Http網址上都是「部落格名稱」和「文章名稱」,要到編輯模式內的網址才會顯示「BloggerID」和「BloggerPostID」。
(這只是個Memo,如果有路人不小心點進來,可以自己實際操作看看就知道。真的,看一眼就知道。)
比較麻煩的是AppScript要取得「操作權限」的設定過程。
- 在Blogger的Google帳號下開啟「Google API Condole」。
- 建立一個新的API專案,並取得數字專案ID。要強調,是「數字」,不是「文字」。
- 在「API和服務」中,新增/開啟一項新的服務(BloggerAPI)。
- 在AppScript的「專案設定」中(一個齒輪形狀的按鈕),找到「Google Cloud Platform(GCP)專案」項目,在下面將數字專案ID加入。
這樣,這組AppScript就有操作BloggerAPI的權限了。
但實際上怎麼操做?(StackOverflow說明與範例在此)
要呼叫BloggerAPI時,用下面這段作為Post資料與格式:
var options = {
method:"post",
contentType:"application/json",
headers: { Authorization: "Bearer "+ ScriptApp.getOAuthToken()},
muteHttpExceptions: true,
payload: JSON.stringify({
title: "Hello from Apps Script!",
content: "This post is automatically created by Apps script"
})
}可以看到Header內帶了這個AppScript的OAuth,而payload內則是用JSON格式傳輸BloggerAPI要求的Post資料格式。
所有BloggerAPI要求的Post資料格式都一樣,就看是要進行「新增」「修改」「刪除」而已。
留言
張貼留言