セール期間にポチッと溜めしたUdemyのGAS講座。
今日01~37セッションまで視聴したところで
だいたい分かってきたので
astro-notion-blogの自動デプロイを可能にした
ぐださまの解説記事を全力で解読することにした。
UrlFetchApp.fetch()
に
deployUrl、deployOptionsがなぜ必要なのかが気になった。
だから、
公式ドキュメントを見てみることにした。
追加して設定したいことがあったら第2引数を使おうねってことが書いてある。
うむ。
納得 😎
でも、なぜ第2引数の内容はmethodとcontentTypeの2つなのか….
気になった。
だから青字 fetch(url, params)をクリックしてもっと詳しく確認!
https://developers.google.com/apps-script/reference/url-fetch/url-fetch-app#advanced-parameters
parameterにはいろいろあるが、
今日受講したGASの講座ではheadersの追加もされていて
「なぜ今回はheadersが不要なのか」
が引っかかりだした。
ぐださまの解説記事をよく読んでみると
CloudflareはAPIではなくWebhookだということを理解。
GASの講座でさっき習った!!
これだ。
CloudeflareはWebhookだからリクエストに関するparameterはいらないってことか👀
スッキリ\(^o^)/
JSONにNotionのデータをパースする前に
また発見!!
UrlFetchApp.fetch(url, options);
url
の中身を遡ると
NotionAPIのあれ。
https://developers.notion.com/reference/post-database-query
白文字は変数。
丸裸にしよう。
haederはNotionAPIに説明がある。
https://developers.notion.com/reference/create-a-token
filter変数内のオブジェクトについてはNotionAPI公式リファレンスにある
1つずつ確認!!
https://developers.notion.com/reference/post-database-query-filter
timestampについてはこれ
last_edited_time
を詳しく設定するにはdate filter conditionを参照したほうがよさそう。
https://developers.notion.com/reference/post-database-query-filter#date-filter-condition
last_edited_time
を設定している
on_or_after
は...
代入した日付を以降(その日も含む)を返す。
ここまでくるとGASのコードを忘れてくるので
もう一度確認!
変数date以降の日付を表示するようにしているフィルターだということが分かった。
現在の時刻から60分さかのぼって変数dateを設定し直している。
filterオブジェクトと似てる。
でも一応NotionAPI公式リファレンスを確認!
https://developers.notion.com/reference/post-database-query-sort
timestampで古い順か新しい順かを設定するんだね!
現在時刻から60分さかのぼって
NotionDB内の編集歴があるのであれば
編集時刻が新しい順に並び替えて
JSONにする。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
その後、
文字列をJSONとして解析する。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse
deployRequest
関数を使って処理
なるほどーーーーー\(^o^)/
解説記事がTwitterで投稿されたとき、
すごいってことだけは分かった。
でも、実際にやってみて
もーどうにもならないくらい感動しちゃった。
一切迷いなく実装できた。
ビューティフォー\(^o^)/\(^o^)/
刺激されて今日はGASの講座を視聴して
楽しくなってきて
そのまま記事を書いてしまいました\(^o^)/
あーーーたのしい!!
Twitterでは更新のお知らせを随時行っています
興味ある方はLet'sフォロー★▼ この記事に興味があったら同じタグから関連記事をのぞいてみてね
RSSリーダーにatomのリンクを登録すると通知が行くよ🐌
https://herohoro.com/atom
やってみてね(*´ω`*)(*´ω`*)
フォロー大歓迎\(^o^)/