פרסמו פיד נתונים: שאחרים יריצו את הווידג'ט שלכם בלי המפתח שלכם
ווידג'ט שנבנה על חיבור Binance או OANDA שלכם לא היה שמיש לאף אחד אחר. עכשיו אפשר לפרסם בדיוק את הקריאות שהוא מבצע, כנקודת קצה לקריאה בלבד עם מטמון, תחת הפרופיל שלכם — בלי לשתף מפתח ובלי לפתוח פרוקסי.
בשיתוף היה חור לא נעים. אתם בונים גרף מט“ח יפהפה על חיבור OANDA שלכם, מפרסמים, והאדם הראשון שמתקין אותו רואה חברו את OANDA כדי להשתמש בנתונים האלה — שזו דרך מנומסת לבקש מזר לפתוח חשבון אצל ברוקר כדי להסתכל על גרף. במסך חי זה היה גרוע יותר: הווידג’ט קפא לתמונה ממוזערת.
הפתרון הוא לא להשאיל למישהו את המפתח שלכם. הוא לפרסם את הקריאות שהווידג’ט שלכם באמת מבצע, כנקודות קצה בפני עצמן, תחת הפרופיל שלכם:
GET /<שם-משתמש>/api/w/<widget>/<endpoint>?symbol=EUR_USD&interval=H1
מפעילים את זה מחלון הפרסום — פרסום פיד נתונים לקריאה בלבד — ומי שאין לו חיבור משלו קורא את הפיד שלכם במקום שיבקשו ממנו להתחבר.
שלושה כללים, וכל אחד מהם הוא סירוב
רק קריאות שבטוח לשתף. שלוש-עשרה מתודות נתונים ניתנות לפרסום. השאר חסומות, כל אחת
מסיבה משלה: account ו-positions הן גם קריאות, אבל הן מחזירות את היתרה שלכם, השווי
הנקי, הרווח וההפסד והפוזיציות הפתוחות. order ו-closePosition מזיזות כסף. upsert
ו-delete הורסות נתונים. scrape מחייבת צד שלישי בכל קריאה. ו-http לבדה כבר נטולת
פרטי גישה, כך שפרסום שלה רק יבנה פרוקסי פתוח עם השם שלכם עליו.
רק הקריאות שהווידג’ט באמת ביצע. הקריאות המוצלחות של הווידג’ט נרשמות בזמן שהוא רץ, וחלון הפרסום מראה לכם את הרשימה — נרות מ-Binance — BTCUSDT, 1h — כדבר הקונקרטי שאתם מסכימים לו. בקשה שמבקשת פרמטר שמעולם לא פרסמתם, או ערך מחוץ לקבוצה שהרחבתם אליה, נדחית לפני שמשהו מפוענח. פרמטרים שאין להם מה לחפש בכתובת — שאילתת SQL, וקטור — לא מופיעים בה לעולם: הם מנוגנים מחדש מילה במילה מהאחסון.
סירובים אינם ניתנים להבחנה. נקודת קצה שלא קיימת, פרמטר מחוץ לרשימה שלו וקהל שאתם לא חלק ממנו — כולם מחזירים את אותו 404. עצם קיומו של פיד לחברים בלבד הוא מידע על המחבר, והתשובה אף פעם לא מדליפה אותו.
מי יכול לקרוא, וכמה זה עולה לכם
הקהל אינו מתג רביעי שאפשר לשכוח: הוא הולך אחרי פוסט ההכרזה — כולם, העוקבים שלכם או החברים שלכם. הכרזה פרטית מכבה את הפיד לגמרי, כי הכרזה שרק אתם רואים שמגבה נקודת קצה שאחרים קוראים לה פשוט לא מתיישבת.
העלות היא החלק שכדאי להבין, כי הוא החלק שמפחיד. אתם בוחרים מרווח רענון — כל 30 שניות, 5 דקות, כל שעה או כל יום — וזה המקסימום שבו החיבור שלכם ייעשה בו שימוש, לא משנה כמה אנשים פותחים את הווידג’ט. הקוראים חולקים עותק אחד במטמון. עשרה צופים ועשרת אלפים מייצרים אותו מספר קריאות, ובכל חלון מותר בדיוק רענון אחד גם אם כמה קוראים מפספסים את המטמון באותו רגע.
המפתח שלכם לא עוזב את השרת. היתרה, הפוזיציות וההוראות שלכם לעולם לא מתפרסמות. והפיד קשור לכרטיס: הסירו את הווידג’ט מהרשימה ונקודות הקצה מפסיקות לשרת.
החיבור של הצופה תמיד מנצח
פיד מפורסם הוא גיבוי, אף פעם לא תחליף. אם למי שפותח את הווידג’ט שלכם יש חיבור OANDA משלו, הווידג’ט משתמש בשלו: החשבון שלו, הנתונים שלו, המגבלות שלו. הפיד נבדק רק אחרי שהווידג’ט לא הצליח למצוא חיבור משלו, וכישלון הוא שקט: הוא רואה את ההודעה הרגילה חברו את הזירה הזו במקום שגיאה חדשה שצריך ללמוד.
נקודות הקצה האלה עוברות דרך אותם מתאמי זירות שהאפליקציה כבר מביאה, כך שפיד מפורסם מחזיר בדיוק את אותן צורות שראיתם כשבניתם את הווידג’ט — בכל זירה פעילה בקטלוג, בלי קוד ייעודי לאף אחת.
מה הוא במכוון לא עושה
- דשבורד מסחר משותף מצייר את הגרף שלו, לא את חלונית החשבון. זו רשימת החסימות עושה את עבודתה, לא באג.
- בורר סמלים מציע רק את הסמלים שמניתם. ווידג’ט עם קלט חופשי יורד לקבוצה קבועה. זה המחיר של לא לבנות פרוקסי פתוח אל הברוקר שלכם.
- במצב פרטי אי אפשר לפרסם פיד. במצב פרטי פרטי הגישה שלכם חיים רק בחותם של המכשיר הזה: לשום שרת אין אותם, ולכן שום שרת לא יכול לרענן משהו בשמכם.
- פיצול לא יורש את הפיד. פידים קשורים לשושלת של הווידג’ט, כך שכל עותק מותקן פותר את אותן נקודות קצה, ופיצול לא פותר אף אחת.
זו פעולה קטנה, והיא משנה את מה שפרסום אומר: ווידג’ט שאתם משתפים הוא עכשיו ווידג’ט שאנשים באמת יכולים להריץ.
פתחו את Nexow, קחו ווידג’ט שבניתם על חיבור עם מפתח, ופרסמו אותו כשהפיד דלוק.
בנו את הווידג׳ט הראשון שלכם בדקה הבאה
התצוגה המקדימה חיה וחופשית לנסיון. אין הרשמה, אין הגדרה — פשוט תארו מה אתם רוצים לראות.

