找 AI 寫的最簡單串接 不確定流程是否為 best practice ``` <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Http; class ShopifyController extends Controller { public function index(Request $request) { // Shopify 必定傳入 shop=xxxxx.myshopify.com $shop = $request->query('shop'); if (!$shop) { return 'Missing ?shop=xxxxx.myshopify.com'; } // 從 DB 找現有 token (POC 用 session 模擬) $token = session("token_{$shop}"); // 已安裝 → 直接進入 app 面板 if ($token) { return "已安裝 App,商店 {$shop} 的 Token 是:<br>".$token; } // 尚未安裝 → 跳 OAuth Flow $clientId = '6b7001530576df226f1e8d6773eea438'; $scopes = 'read_products'; // $redirectUri = route('shopify.redirect'); $redirectUri = 'https://demo-connect.turn.tw/redirect'; $authorizeUrl = "https://{$shop}/admin/oauth/authorize?".http_build_query([ 'client_id' => $clientId, 'scope' => $scopes, 'redirect_uri' => $redirectUri, ]); return redirect($authorizeUrl); } public function redirect(Request $request) { $shop = $request->get('shop'); $code = $request->get('code'); if (!$shop || !$code) { return 'Missing shop or code.'; } $clientId = '6b7001530576df226f1e8d6773eea438'; $clientSecret = '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'; // 呼叫 Shopify 換永久 access token $response = Http::post("https://{$shop}/admin/oauth/access_token", [ 'client_id' => $clientId, 'client_secret' => $clientSecret, 'code' => $code, ]); if ($response->failed()) { return 'Token exchange failed: '.$response->body(); } $accessToken = $response->json('access_token'); // POC → 先存在 Session session(["token_{$shop}" => $accessToken]); return redirect('/?shop='.$shop); } } ```
一下 client id + client secret 一下 api key + api secret 是在哭? 答案其實很簡單: 🧨 Shopify 內部團隊 → 不同部門搞兩種說法 1️⃣ Developer Dashboard(Platform 團隊) 負責 App 資料、App 建立流程 → 他們遵循 OAuth 2.0 標準用語 → 就叫 Client ID / Client Secret 這是「平台管理後台」那邊的人在開發。 2️⃣ App SDK / API(Shopify API 團隊) 負責 Node / Remix / Ruby / PHP SDK → 早期從 2016 就用 API key / API secret → 文件 & SDK 也都是這樣稱呼 → 如果硬改會: 破壞所有舊專案 破壞所有 NPM package 破壞所有教學內容 破壞所有 sample apps 所以 SDK 團隊堅持 繼續用 apiKey / apiSecretKey。
神文! **軟體的極限並不是計算資源,而是人類的認知資源。** 很有啟發性!
一起加油
短時間上傳太多圖片 被 pinterest ban 了  幹  明天繼續試試看 不會真的到處被封殺吧幹
最近太多人交作業啦 站長留言通知爆炸,沒空一個一個 review 你們可以單獨發一篇作業文嗎? 參考以下連結: https://codelove.tw/search?q=%E4%BD%9C%E6%A5%AD%E5%88%86%E4%BA%AB 一來方便自己日後翻找 ...
所謂年後離職潮,應該很多人年後會換工作吧 祝各位跳槽順利 😁 然後很多新人應該工作不到一年,這次是以工程師身份第一次放年假 歡迎分享菜鳥工程師工作心得 😁 祝各位新年快樂 😁😁
歡迎最近新註冊的用戶 @skytsai3321 @eriksun0310 @luumii694 @ertclee @aelgy @FlameOfDeepSea @Berlin @alan880227 @apingbping @yu11 @YouKlike @balduran @joyho @I...
過年快到了!相信很多人會趁著過年的空檔,用力自學、進修、變強! 站長來給大家發放一些練習包! 即日起~2/24(元宵節),共三週,免費開放全站所有付費內容! 大量練習包在此 -> https://codelove.tw/courses/frontend-beginner 大家...
使用 macbook 開發,用 vitest 寫元件測試 在 CI 環境不能跑,出現以下訊息: ``` Error: Cannot find module @rollup/rollup-linux-x64-gnu. npm has a bug related to optional d...
查了一下,看到一張圖表 https://npmtrends.com/vite-vs-webpack webpack 快被 vite 幹掉了~ 花時間學 vite 一定值得~
老話一句,站長還是覺得花10幾萬去補習班,風險很高,因為有進度跟不上、老師課太多、過勞的問題 但是完全自學又有點沒方向,還是要有業界人士幫忙、能討論比較好 新的一年,站長決定推出一個新的教練服務 https://codelove.tw/coaching 大家參考看看
我應該在許多地方說過 我會在業餘時間 不斷開發一些 side project 有些是有小獲利的 當然這相當困難,應該說是非常非常困難,有機會再多跟大家聊聊 --- 這邊分享幾個國外社群,裡面都是由工程師獨立開發小產品的一些故事分享 - https://www.produ...
看到國外在討論 https://www.framer.com/ 這款做 UI 設計是不是不錯呀? 台灣有流行嗎?
最近我留意到一件事,在我們工程師閒聊群組 https://line.me/ti/g2/nipkjq2WoZPKX5dTn9tE9266aEOt6EOICFGa1g 常常會出現感情方面的困擾&討論,令我非常吃驚,因為這是討論 coding 的群組 但是這個話題出現的頻率相當高,我發現...
2024 年 鼓勵更多工程師加入論壇討論 現在支援 Github 登入 歡迎邀請工程師朋友一起來加入~
正在寫元件測試 很多個元件有用到 pinia 測試的時候,我是希望能提供 initial state、然後可以用 cypress.intercept 替換掉 ajax 回應 根據官方文件,我使用 ``` createTestingPinia({ stubActio...
承接前面幾篇 > 開發人員平台現在需要商家驗證才能取得進階存取權限 https://developers.facebook.com/blog/post/2023/02/01/developer-platform-requiring-business-verification-for-ad...
承接上一篇,FB 對待合作開發人員,立場越踩越硬 https://codelove.tw/@howtomakeaturn/post/NxNy0q 畢竟我們工程師串 FB API 沒在付錢,如果像詐騙集團他們有持續付 FB 廣告費 那 FB 就很樂意持續幫忙投放詐騙廣告,這是台灣用戶...
大概從 2012 年開始,幾乎大大小小的網站、APP 都會有「FB 登入」功能吧 就是去 FB 後台 註冊 申請一下即可 一堆資工系大學生、工程師業餘 side project 幾乎都玩過 但是相關政策一直在改變 就在今年 2023 改成 一定要有註冊公司 才能使用 http...
看到一篇滿好的文章 https://jiongks.name/blog/introducing-zhlint 作者親自寫了一個工具 值得學習
看到一則廣告 https://sites.google.com/view/202201kittencoding-teacher/main 有人去試過嗎 需要賺外快的朋友們可以參考看看喔!
我有一個資料表 大概 15 萬筆資料 其實也沒很多 before ``` $posts = Post::inRandomOrder() ->limit(1000) ->get(); ``` 這樣寫,結果跑起來超慢,...
處理大量資料,會去用 chunk 如果先用 limit 限制數量,再用 chunk 結果 limit 好像會無作用 https://github.com/laravel/ideas/issues/103 https://github.com/laravel/framework...
轉職前端系列,我發現完成系列一~九就差不多了,後面非必要 為避免誤解,我乾脆把原本的十、十一移到現役前端系列 並且改名為 `後端 JS 訓練(一)` 與 `後端 JS 訓練(二)` 另外,因為現役前端系列,目前內容不多 我就先把現役前端系列的內容,都先設為免費 以上更新...
家裡有一台 2018 年的 asus 舊筆電 硬碟大概有 100GB 的閒置空間 剛好最近家裡 中華電信網路升級,想說來用出租硬碟 挖挖看 storj 幣 --- https://www.storj.io/host-a-node 跟著步驟跑 在 `Generate...
最近幫客戶研究 ab testing,目前找到最適合的服務是 GrowthBook 在研究這服務的時候,找到介紹文章 https://news.ycombinator.com/item?id=30515940 > Developers often launch a feature ...
在上一篇文章,我簡單介紹了 GraphQL 的好處,以及如何在 laravel 中實作 這一篇文章,接著介紹一下如何在前端使用 React 進行整合 # 實務範例與 API 線上試玩 上一篇文章我用 graphql + laravel 實作了簡單的電商後台 api https...
看到一篇文章 提到 trunk based development 以及 feature flag 的使用 我在想 好像還可以搭配 ab testing 進行 https://koenvangilst.nl/blog/trunkbased-development 分享跟大家參...
客戶最近有把舊 laravel 專案改寫為 SPA 的需求,需要前後端分離 為了方便前後端溝通、改善開發者體驗,我建議&協助他們導入 GraphQL 技術到 laravel 專案中! 實際導入&開發半年之後,成效非常不錯!前端工程師、後端工程師都用得很開心! 今天跟大家分享一些心得...
來,讓我們特別關心轉職成功、上班大約半年的 @birdie2019 @JoeyLai 最近有學到新東西? 是否變得越來越有自信? 該不會想要跳槽去別間公司了吧? 隨時歡迎上來分享工作筆記 or 上來發問卡關問題~
正在評估幫一組開發團隊導入新工具 方便寫技術文件 管理技術債 也進行內部知識管理 我發現三大 git hosting 都有 pages 功能 其中 github 跟 gitlab 的 pages 可以限定權限瀏覽 https://docs.github.com/en/enterpr...
遇到一個有趣的問題 我開發的某組 API 多位用戶回報不能使用 使用 `fetch()` 可以執行 但使用 `axios.get()` 就不能執行 會被 CloudFlare 報 403 錯誤擋住 我估計是發出的 http request headers 內容有差...
最近跟一些年輕的工程師合作,發現系統上線之後 bug 有點多 這當然很正常,不過,如果適度的留意自己的當下的「寫作風格」 其實可以減少很多 bug,或者是可以減少 debug 的時間 這些年工作下來,我發現在開發不同元件的時候,我基本上會在兩種風格中選擇,簡單跟大家分享 # ...
歡迎最近新註冊的用戶 @fanjunran @hygge54812 @prince811009 @frog0708 @wiyoy24437 @nieh099 @sindy1280 歡迎在留言處簡單自介一下~ 可以說一下從哪邊發現這論壇的~最近在學什麼東西~或者是關於你的一件小趣事~...
我發現大家在 LINE 群的發問討論很踴躍 https://line.me/ti/g2/nipkjq2WoZPKX5dTn9tE9266aEOt6EOICFGa1g 可是因為是聊天室的形式,討論串很容易被洗掉 我有看到有些人的發問,還沒有人回答 就被聊天訊息洗掉了 我建...
歡迎最近新註冊的用戶 @Kenjiwuuu @ck1040308 @cony991 @MollyLin @sungcowcow @kelo @macweather 歡迎在留言處簡單自介一下~ 可以說一下從哪邊發現這論壇的~最近在學什麼東西~或者是關於你的一件小趣事~ 也請大家...
為了提升系統穩定性,最近替某電商客戶的專案寫單元測試 有一部份核心功能會用到第三方 API,這讓測試變很難寫,因為沒有本地的狀態變化可以比較 想到 laravel 有一個關於 mail 的測試功能,有類似情況 簡單來說就是在 phpunit 中這樣啟動之後 ``` Mail...
阿川收到網友提問如下: > 阿川你好: > 我的背景是雲科碩畢業,算是混上去的,現在打算轉職軟工,由於有在工作,所以打算先以自學為主3-6個月,看情況後決定是否報名資策會。 > 想請問一下,目前比較希望能夠走後端(網頁開發類),查了一些相關資訊,網頁似乎比較友善,未來有機會再往其他產業前進...
阿川收到網友提問如下: ``` 站長阿川您好 我是一名App工程師 從2013年第一份工作到現在近10年 這十年我從工程師到資深工程師到管理職位都有相關經驗 一共經歷四份工作 離開公司原因大多是與人理念不合 今年邁入40歲 目前在一間外商工作 年薪約200左右 最近又再找...
工作了很多年,還是搞不太懂 promise、async/await 是什麼嗎?用這份作業包一次搞定觀念! https://codelove.tw/@howtomakeaturn/course/d3obxP --- 另外,練功作業包現在分成「轉職前端」、「現役前端」兩種專區 因...
今天早上,在我們新手寫程式 LINE 群組,有幾個工程師&新手在討論,工程師與創業的話題 https://line.me/ti/g2/nipkjq2WoZPKX5dTn9tE9266aEOt6EOICFGa1g 其中一段 cue 到我: > 這裡的版大不就是創業嗎 lol >...
歡迎最近新註冊的用戶 @a41522001 @hill654 @ru042l41j4 @Road @stanly123 @r567tw @cssf998811 @thes80140 歡迎在留言處簡單自介一下~ 可以說一下從哪邊發現這論壇的~最近在學什麼東西~或者是關於你的一件小趣事...
昨天在我們新手寫程式 LINE 群組,有幾個工程師&想轉職的新手在討論: > 各位前輩們好,小弟是自學轉職的前端工程師,目前有兩個 offer,一個是接案公司;一個是自有產品,自有產品的那間目前只有一個junior前端,進去有問題可能沒人可以問,但看網路上好像都不太推接案公司。猶豫了很久選不出...
工作了很多年,還是搞不太懂 promise、async/await 是什麼嗎?用這份作業包一次搞定觀念! https://codelove.tw/@howtomakeaturn/course/Pam6qL @hung @birdie2019 @superyngo 找時間來寫寫看~
上一篇文章談了「同時上班&接案&創業」的簡單策略 我發現滿多人對於接案這塊比較感興趣,提了很多問題 我簡單分享一些心得&建議 --- > 請問原po,在準備接案有想過:我的能力已經足夠接案,這種類似的想法嗎? 這幾年因為 freelancer 的身份,在一些活動、場合會...
歡迎最近新註冊的用戶 @529MS @annie8278 @yukai @evanke183 @cvbn111222333g @yuamando @sophiaJ @qw820301 @jdps40734 @mutemute1127 @chihuahua48763 @Jonas @boson1...
阿川收到網友提問如下: > 您可以分享您的軟體工程師職崖規劃嗎?再次感謝 我個人的職涯規劃其實比較偏激,是同時做「上班&接案&創業」這三件事 我簡單說明一下爲什麼我會這樣做,給大家參考 --- 我是 79 年次,2013 年退伍的,大學資管系畢業 出社會第一個月我...
某種角度來說,我認為當工程師是很幸運的,能有兩種角度去經營個人品牌:菁英路線 vs 社群路線 --- # 菁英路線 菁英路線就是想辦法得到頂尖軟體公司的認可,比如說 Google Facebook Microsoft IBM 或者台灣本土一些知名軟體公司 或者矽谷一些設點在台...
最近在幫客戶專案寫 e2e 測試,發現幾個常見錯誤 首先,e2e 跑起來很慢,會拖慢 CI 速度,應該不是多多益善,而是要挑高價值的來寫 很多基本狀況、訊息提示、UI 表現,應該要用 unit test 來處理,vue 與 react 應該都有對應的 `component test` 工...
想玩一下 stable diffusion 在 macbook 嘗試了一下 不太好安裝 拿出家中的老舊筆電 2018 年買的 asus zenbook 上面有雙系統 ubuntu 18.04 不過顯卡一直沒有順利啟用 不管了先用 cpu 硬跑 https://github.com/...
阿川收到網友提問如下: > 阿川您好 我是一位工業設計師,最近想轉職前端工程師,但年齡已38,有爬過一些文章大部分是說年齡確實會是就業一個限制但我想這在所有的行業大概都一樣,但同樣的能力和薪水要求如果企業可以用一個20幾歲的又何必用一個快40歲的人也是一個不爭的事實,想請問前輩的看法~ 非常感...
租用了新的雲端主機,有一天發現全部線上網站都掛了 經檢查發現是硬碟被吃光了,但是我應該沒有存那麼多資料&圖片才對 使用指令慢慢檢查根目錄,在查到 var 時 ``` du -sh /var ``` 發現是 var 資料夾佔用了 125 GB,顯然問題就在這裡 接著使...
大家好,我是站長阿川 我留意到 LINE 群組的討論非常踴躍 很多迷惘、想轉職的新手,各種發問,都有業界工程師幫忙回答,非常熱心! 各位很多的回答「非常詳細」,完整到我覺得:只有群組內的新手看到,也太可惜! 應該讓網路上更多人都能看到,這樣更造福眾生、未來有人 google ...
現在內文出現 youtube 網址的話 會自動偵測&轉為 iframe 方便顯示 --- 謝謝 @JsLover0018 的建議
每週二晚上《CodeLove Talk》直播! 開放觀眾 Call-in,一起討論軟體開發相關的話題!