מדריך מעשי

הטופס מציג הצלחה, אבל המייל לא מגיע: כך מאתרים את התקלה

במקום לשלוח שוב ושוב, עקבו אחרי הודעת בדיקה אחת.

התשובה בקצרה. בדקו בנפרד את בקשת האתר, הרישום ב-Formgong וערוץ המייל עם נמען מאומת. success: true מאשר קבלה, לא הגעת מייל. גם ספאם, אימות החשבון ו-Turnstile משפיעים על התראות.

Formgong·

הטופס שלכם שם Email הודעה שליחה Formgong Telegram פנייה חדשה שם · Email פתיחת הפנייה + התראה במייל
העיצוב נשאר באתר. Formgong מקבל את הפניות ושולח את ההתראות.

שלוש תוצאות שונות

תודה על המסך יכולה להיות רק מצב בתצוגה. רישום ומייל שהתקבל הם שלבים אחרים. שלחו טקסט מזוהה מהאתר שפורסם ועקבו אחרי אותה פנייה. הקודים כאן שייכים ל-Formgong; בשירות אחר בדקו את התיעוד שלו.

חפשו את הבקשה ב-Network

פתחו כלי דפדפן וחפשו POST אל https://formgong.com/submit. בדקו מפתח, שדות ותשובה. אין בקשה? בדקו כפתור וטיפול בשליחה. ב-HTML חשובים action ו-method; ב-JavaScript כתובת fetch.

קראו את התשובה לפני הצגת הצלחה

בקשו JSON עם Accept: application/json ובדקו HTTP וגם success. fetch שהסתיים עשוי לקבל תשובת שגיאה. טופס HTML רגיל מקבל הפניה. הפעילו את הדוגמה בתוך try/catch ושמרו את השדות בכישלון.

JavaScript
// Call from your form's submit handler inside try/catch.
// Keep the entered fields when the request fails.
async function sendContactForm(form) {
  const response = await fetch("https://formgong.com/submit", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      Accept: "application/json",
    },
    body: JSON.stringify({
      ...Object.fromEntries(new FormData(form)),
      access_key: "fk_your_access_key",
    }),
  });
  const result = await response.json();
  if (!response.ok || result.success !== true) {
    throw new Error(result.message || "Submission failed");
  }
  // Accepted by Formgong; this is not email-delivery confirmation.
  return result.id;
}

בחרו את הבדיקה לפי הקוד

unknown_access_key מצביע על המפתח; origin_not_allowed על הדומיין. turnstile_missing ו-turnstile_failed דורשים בדיקת טוקן. rate_limited ו-limit_exceeded הם מגבלות שונות, שלא נפתרות בלחיצות מהירות.

בטלו את הכפתור בזמן המתנה והחזירו אותו בסיום. אל תמחקו את ההודעה בעקבות שגיאה.

בדקו גם את הספאם

פתחו את הטופס שתואם למפתח באתר. botcheck מלא יכול לקבל תשובה שנראית תקינה, אבל ליצור ספאם בלי התראות. אם הערכת AI מחזיקה ספאם, בדקו גם את הסיווג הזה.

הרישום קיים? עברו למייל

אמתו את מייל הבעלים, בדקו שהתראות פעילות ושהנמען מאומת. אחר כך בדקו דואר זבל, מסננים והעברות.

הודעת טלגרם עוזרת לצמצם את הבעיה לערוץ המייל, אך לא מוכיחה שהמייל הגיע. תשובה אוטומטית למבקר היא הודעה נפרדת.

אחרי שינוי הגנה

עדכנו את הקוד עם site key ו-cf-turnstile-response. לטוקנים יש תוקף ושימוש יחיד; ייתכן שצריך לאפס את הרכיב לפני ניסיון נוסף. secret key לא נכנס לדפדפן. בדקו בדומיין שפורסם.

שמרו מידע שאפשר לחקור

רשמו כתובת, זמן, סטטוס HTTP, קוד ומזהה פנייה אם קיים. אל תפרסמו נתוני לקוחות או סודות. אחרי תיקון בדקו מחדש את כל המסלול.

לנקודת התחלה פשוטה יש דוגמת HTML, ולערוץ נוסף מדריך טלגרם.

שאלות נפוצות

success: true מאשר שהמייל הגיע?

לא. הבקשה התקבלה; מסירת ההתראה מתבצעת בנפרד.

למה טלגרם מגיע והמייל לא?

אלה ערוצים עצמאיים. בדקו התראות מייל, נמענים מאומתים ודואר זבל.

למה botcheck לא מציג שגיאה?

זו מלכודת לבוטים: השליחה עשויה להיראות מוצלחת ולהישמר כספאם בלי התראה.

איך מנסים שוב עם Turnstile?

מקבלים טוקן חדש ובודקים שהוא נשלח ב-cf-turnstile-response. לא משתמשים שוב בטוקן שכבר נוצל.

מקורות ותיעוד

מקורות רשמיים למדריך: MDN: Fetch API, Cloudflare: Turnstile token validation. התיעוד של Formgong, אחסון הנתונים.

קריאה בפורמט Markdown
→ חזרה לבלוג