進度回顧
Day 18 Chrome Extension 快存 → 手機場景:LINE Bot + n8n 自動入庫
因為先做了一個 Chrome extension,幫助我快速儲存網站上逛到的文章或影音,但手機其實不適用,所以串接 n8n 做了Line BOT,在手機滑到的連結能順手丟到 Line,並自動儲存到資料庫。
前一天測試結果:
所以今日目標:
結論:另開對話效率很快,2次對話處理了
解法:
修改前/後比較:
舊版是字串,只是裡面剛好長得像 JSON,社群連結 url 複雜度有多參數複雜度高,所以失敗。
設定項目 | 原本(錯誤) ❌ | 現在(正確) ✅ |
---|---|---|
Body Content Type | Raw/Custom | JSON |
Body 欄位名稱 | Body | JSON |
Body 內容格式 | 字串模板 "{{ $json.url }}" |
表達式 $json.url |
具體的程式碼差異:
原本:
contentType: "raw"
rawContentType: "application/json"
body: `{
"url": "{{ $json.url }}",
"title": "{{ $json.title }}"
}`
新版:
specifyBody: "json"
jsonBody: ={{ {
url: $json.url,
title: $json.title
} }}
舊版:10 個節點,1 層判斷,對所有網站用同一招
新版:13 個節點,2 層判斷,針對不同網站用不同方法
針對 YouTube
針對其他網站
新版流程
1. Webhook
↓
2. Extract Message
↓
3. IF URL Exists(判斷是否有網址)
├─ Yes → 4. IF YouTube(判斷是否為 YouTube)
│ ├─ Yes → 5a. Fetch YouTube Title(用 oEmbed API)
│ │ ↓
│ │ 6a. Extract YouTube Title
│ │ ↓
│ └─ No → 5b. Fetch Other Webpage(一般網站)
│ ↓
│ 6b. Extract Other Title
│ ↓
│ ┌─────────┴─────────┐
│ ↓ ↓
│ 7. Prepare Data
│ ↓
│ 8. Save to Base44
│ ↓
│ 9. LINE Reply Success
│ ↓
└─ No → LINE Reply Error
↓
10. Respond to Webhook
新版
舊版
實際測試
丟到 LINE BOT
待讀頁面顯示
今天心得非常不科學,因為感覺有時候不要太過執著,想在同一天要解決完所有 bug。臨時利用開會空檔時間,把問題留順便丟給 Claude 在背景執行,然後再偶爾看一下成果,但就兩次對話後,格式測試都正確了。突然有種其實好像有時候放一放,讓 Claude 也自我冷靜一下 (? 反而會更順利。所以總結
AI 幫了我什麼
就像你要去不同地方:
去台北 → 搭高鐵(YouTube 用 API)
去附近 → 走路就好(其他網站用 HTML)
如果所有地方都只能走路,那去台北就會很辛苦(就像舊版對 YouTube 會失敗)!
我做了什麼
遇到的挑戰
無
下一步
針對待讀清單頁面,從發想、Web、到手機版流程,初步整理完告一個段落。接下來就看這個專案前面累積的優化事項,挑選想做的執行。合計第8/16/17/18天做完待優化項目