castomFLOW
เปิด castomFLOW

การเชื่อมต่อสิ่งใดก็ได้

HTTP เข้า HTTP ออก ส่วนที่ยุ่งยากจัดการให้

เครื่องมือระบบอัตโนมัติทุกตัวโฆษณาจำนวนการเชื่อมต่อ ตัวเลขนั้นมักใหญ่มากและมักเป็นคำถามที่ผิด เพราะระบบที่คุณต้องใช้จริงคือระบบที่สร้างขึ้นเองภายในเมื่อปี 2014 โดยคนที่ลาออกไปแล้ว สิ่งที่สำคัญคือเครื่องมือพูดโปรโตคอลที่อยู่ใต้ทั้งหมดนั้นได้ดีเพียงใด

การเชื่อมต่อสำเร็จรูป

แอปพลิเคชันที่ธุรกิจส่วนใหญ่ใช้งานมีขั้นตอนที่เตรียมไว้แล้ว: ร้านค้าและมาร์เก็ตเพลส บัญชีและการออกใบแจ้งหนี้ สเปรดชีตและฐานข้อมูล ปฏิทินและไปรษณีย์ พื้นที่จัดเก็บและการส่งข้อความ CRM และเฮลป์เดสก์ ผู้ให้บริการชำระเงินและบริษัทขนส่ง คุณอนุญาตบัญชีเพียงครั้งเดียว และช่องข้อมูลจะถูกตั้งชื่อตามภาษาที่แอปพลิเคชันใช้ ไม่ใช่ตามภาษาของ JSON ของมัน

เมื่อแอปพลิเคชันใดมีลักษณะเฉพาะของตลาดโปแลนด์ — เช่น ระบบออกใบแจ้งหนี้ที่ต้องพร้อมรองรับ KSeF หรือบริษัทขนส่งที่ป้ายพัสดุเป็นมาตรฐานระดับชาติ — ขั้นตอนสำเร็จรูปรู้เรื่องนี้ เพราะตระกูลนี้ขายในตลาดนั้นและต้องเรียนรู้มาแล้ว

แล้วกรณีทั่วไปล่ะ

ทุกอย่างที่เหลือคือขั้นตอน HTTP และขั้นตอน HTTP ที่นี่ไม่ใช่รางวัลปลอบใจ มันคือกลไกชุดเดียวกันที่การเชื่อมต่อสำเร็จรูปสร้างขึ้นบน พร้อมการจัดการส่วนที่น่าเบื่อหน่ายหากต้องเขียนเองในระดับเดียวกัน

ส่วนที่น่าเบื่อหน่าย

จัดการให้แล้ว คุณจึงไม่ต้องเขียนซ้ำ

การยืนยันตัวตน

API key, bearer token, basic auth, OAuth 2 พร้อมการรีเฟรช, การลงลายเซ็นคำขอแบบ HMAC, mutual TLS ข้อมูลรับรองจะถูกเก็บเพียงครั้งเดียว อ้างอิงด้วยชื่อ และไม่มีวันถูกพิมพ์ลงในล็อกหรือบันทึกการรัน

การแบ่งหน้า

เคอร์เซอร์ เลขหน้า ออฟเซ็ต ส่วนหัว Link และ API ที่ส่งสัญญาณจุดสิ้นสุดด้วยการคืนอาร์เรย์ว่าง ระบุรูปแบบที่เป็น แล้วขั้นตอนนั้นจะไล่ทั้งชุดให้ครบ

ขีดจำกัดอัตราเรียก

เพดานต่อการเชื่อมต่อหนึ่งรายการ ซึ่งได้รับการเคารพในทุกเวิร์กโฟลว์ที่ใช้งาน เมื่อผู้ให้บริการตอบกลับด้วย 429 พร้อม Retry-After ขั้นตอนจะรอตามระยะเวลานั้น แทนที่จะรุมเร้าต่อ

การลองใหม่และการถอยหลังแบบเพิ่มระยะ

ความล้มเหลวชั่วคราวจะถูกลองใหม่ด้วยช่วงเวลาที่เพิ่มขึ้นและมีเพดานจำกัด ขั้นตอนหนึ่งเป็นฟังก์ชันบริสุทธิ์ของอินพุตของมัน ดังนั้นการลองใหม่จึงรันขั้นตอนนั้นซ้ำ ไม่ใช่รันงานทั้งหมดซ้ำ

เพย์โหลดที่ยุ่งยาก

JSON, form encoding, XML, ข้อความธรรมดา, การอัปโหลดแบบ multipart คำตอบจะถูกแยกวิเคราะห์เป็นฟิลด์ที่คุณอ้างอิงตามชื่อได้ รวมถึงฟิลด์ที่ซ้อนอยู่ลึกสี่ชั้น

การจำกัดเวลา (Timeout)

มีขีดจำกัดต่อขั้นตอน จึงไม่มีระบบภายนอกที่ช้าเพียงตัวเดียวครอบครองเวิร์กเกอร์ไว้ขณะที่งานที่เหลือต้องเข้าคิวรอ เมื่อถึงขีดจำกัดแล้วจะทำอย่างไร คุณเป็นผู้กำหนด แยกตามขั้นตอน

หากระบบนั้นพูดภาษา HTTP ได้ บทสนทนาก็เริ่มต้นไปแล้ว

เว็บฮุกขาเข้า ที่จัดการอย่างจริงจัง

ทุกเวิร์กโฟลว์สามารถมี URL ที่ใช้เริ่มการทำงานได้ URL นั้นจะตรวจสอบลายเซ็น — HMAC ในรูปแบบที่ผู้ให้บริการทั่วไปใช้ และใช้ shared secret ในกรณีที่ผู้ส่งทำได้เพียงเท่านั้น คำขอที่ไม่มีลายเซ็นส่งมายังเวิร์กโฟลว์ที่ต้องการลายเซ็นจะถูกปฏิเสธและบันทึกไว้ ไม่ใช่ประมวลผลเงียบ ๆ ผ่านไป

การกำจัดข้อมูลซ้ำทำโดยอิงจากตัวระบุของเพย์โหลดเอง ดังนั้นผู้ส่งที่ลองใหม่เพราะไม่ทันเห็น 200 ของคุณจะได้รับการรันเพียงหนึ่งครั้ง ไม่ใช่สามครั้ง เพย์โหลดที่ผิดรูปแบบจะถูกเก็บไว้พร้อมเหตุผลที่ถูกปฏิเสธ เพราะสาเหตุที่พบบ่อยที่สุดของช่องว่างลึกลับในระบบอัตโนมัติ คือผู้ส่งที่เปลี่ยนใจเรื่องฟิลด์หนึ่งฟิลด์

ระบบที่พูดได้แต่ภาษา CSV

ระบบแบบนั้นมีอยู่จริง ไฟล์ปรากฏบนเซิร์ฟเวอร์ SFTP ตอนตีสี่ หรือมาถึงในรูปไฟล์แนบ หรือถูกวางไว้ในโฟลเดอร์ที่แชร์ร่วมกัน เวิร์กโฟลว์สามารถเฝ้าดูไฟล์นั้น อ่านมัน และถือว่าแต่ละแถวเป็นเรกคอร์ดหนึ่งรายการ — รวมถึงไฟล์ที่มี byte-order mark, ใช้เครื่องหมายเซมิโคลอนคั่น และแถวหัวข้อเป็นภาษาโปแลนด์ เพราะนั่นคือสิ่งที่ไฟล์เอ็กซ์พอร์ตจริง ๆ ดูเป็นแบบนั้น

ทางกลับกันก็ทำได้เช่นกัน: เวิร์กโฟลว์สามารถประกอบไฟล์ขึ้นมาและวางไว้ที่ที่ระบบอีกฝ่ายคาดว่าจะพบ ซึ่งมักเป็นอินเทอร์เฟซเดียวที่ซอฟต์แวร์ยุคปี 2006 มีให้

ฟีดซัพพลายเออร์รายคืนSFTP → HTTP
  • ⚡ทริกเกอร์ไฟล์ใหม่บน SFTP ของซัพพลายเออร์: stock-2026-09-09.csv
  • 2แยกวิเคราะห์เซมิโคลอน, byte-order mark, หัวข้อภาษาโปแลนด์ รวม 4 118 แถว
  • 3ทำให้เป็นมาตรฐานตรวจสอบรหัสสกุลเงินกับข้อมูลอ้างอิง มี 2 รายการถูกปฏิเสธเพราะไม่ถูกต้อง
  • 4พุชHTTP PATCH เป็นชุดละ 200 รายการ โดยเคารพขีดจำกัดอัตราเรียก
  • !ข้อยกเว้นสองแถวถูกยื่นไว้ให้เจ้าหน้าที่ตรวจ พร้อมเลขแถวและเหตุผล อีก 4 116 แถวผ่านไปเรียบร้อย

ขั้นตอนที่เรียกใช้โมเดล: 0ค่าใช้จ่ายของการรันนี้: ไม่มี

ข้อมูลประจำตัวสำหรับยืนยัน (Credentials) เก็บไว้ที่ไหน

เข้ารหัสไว้ อ้างอิงด้วยชื่อ จำกัดขอบเขตอยู่ในเวิร์กสเปซที่เป็นเจ้าของ และไม่มีวันแสดงผลในบันทึกการรัน ข้อความแสดงข้อผิดพลาด หรือบทสนทนากับฝ่ายสนับสนุน เรกคอร์ดการรันจะแสดงเพียงว่าขั้นตอนยืนยันตัวตนในนาม supplier-sftp แต่จะไม่แสดงว่า supplier-sftp คืออะไร

หน่วยงานที่รันเวิร์กโฟลว์หนึ่งชุดให้ลูกค้าสามสิบราย สามารถให้ลูกค้าแต่ละรายมีชุดข้อมูลประจำตัวของตนเอง โดยเวิร์กโฟลว์จะอ้างถึงชุดข้อมูลนั้น ไม่ใช่ความลับโดยตรง การหมุนเวียนคีย์คือการแก้ไขเพียงจุดเดียวในที่เดียว — ซึ่งเป็นเหตุผลหลักที่หน่วยงานเหล่านี้มาใช้บริการที่นี่

ขีดจำกัดที่ควรรู้: ระบบที่ไม่มีอินเทอร์เฟซเลย — ไม่มี API, ไม่มีเว็บฮุก, ไม่มีการวางไฟล์, มีแต่คนคลิกในเบราว์เซอร์เท่านั้น — ไม่สามารถทำอัตโนมัติได้ ทั้งโดยระบบนี้และโดยวิธีใด ๆ ที่ซื่อสัตย์ ที่นี่ไม่มีเบราว์เซอร์แบบ headless แสร้งเป็นผู้ใช้ เพราะสิ่งนั้นพังตั้งแต่ครั้งแรกที่อีกฝ่ายย้ายปุ่ม และพังอย่างเงียบ ๆ โดยไม่มีใครรู้