@צדיק-תמים
בדוגמה הפשוטה והכללית שאני מכיר מהחיים:
חברות שיש להם נתונים שהם רוצים לשמור עליהם, לדוגמה יד 2 (שגם משתמשים באתגר כמו שציינת) -מחזירים תשובה לשאילתות עם הגבלה על מספר הנתונים, נניח 100 לכל שאילתה.
התשובה נשמרת באיזשהו store מקומי למקרה שתרצה לקבל אותה שוב. אם המגבלה על החיפוש הוא משמעותית, נניח שתי חיפושים ליום, הסיכויים שכל הדטה ידלוף מאד נמוכים.
באופן כללי אני מסכים איתך יותר מאשר עם עצמי - ברוב המקרים זה לא רלוונטי.
פשוט פותח האשכול מיקד את המאמצים שלו (או את הפוסט שלו) בזה שלא תהיה אפשרות לתשאל את הנתונים בלי הקליינט שהוא כתב, וזה לא נראה מוצדק.
5566brs
-
-
מסקרנות, אני שואל לאיזה צורך מישהו ישתמש בזה שלא דרך האפליקציה.
באופן כללי, לבנות אפליקציה מתחרה שתשתמש בbackend שלך לא ניתן טכנית בגלל מגבלות CORS.
ז"א שאתה חושש שמישהו יבנה קליינט רק לעצמו. כדי לראות את הנתונים שאתה שולח.
למה שלא ישתמש במה שאתה בנית? מה תהיה הסיבה שבגללה זה עלול לקרות?אם אתה חושש מגישה לנתונים עצמם ואיסוף וסיפוח זוחל של הנתונים, תתמקד בלהגביל את מספר הקריאות פר חלון זמן (או את יצירת הטוקן שזמין לזמן מוגבל, זה אותו דבר)
-
מכיון שהעירו שהפונקציה לא תעבוד אחרי סוף עידן ה"תש", מצ"ב פונקציה משודרגת..
תודה ל@meir-lamdan שהביא לידיעתי את הפונקציה להמרת של ספירה בלש"ק.const getHebDate2 = date => { const toHebCount = n => [...'ת'.repeat(Math.floor(n / 400)), ..."קרש"[Math.floor(n % 400 / 100) - 1] ?? [], ...n % 100 === 15 ? ['טו'] : n % 100 === 16 ? ['טז'] : [..."יכלמנסעפצ"[Math.floor(n % 100 / 10) - 1] ?? [], ..."אבגדהוזחט"[n % 10 - 1] ?? []]].toSpliced(-1,0, '"').join('').replace(/^"|"$/g, '').padEnd(2, "'"); const getX = opt => Intl.DateTimeFormat('he-u-ca-hebrew', { [opt]: 'numeric' }).format(date || new Date()); return [toHebCount(getX('day')), getX('month'), toHebCount(getX('year') % 1e3)].join(' '); }
אפשר לקבל ללא גרשיים על ידי החלפת הקוד החל מtoSpliced לjoin.
מי שמעונין לקבוע את הטקסט של שם החודש (כגון מר-חשון במקום חשון) יצטרך לשלב עם הפונקציה הקודמת. -
@ששא כתב בקבלת תאריך עברי של היום בשפת JS:
תמיד 8.
-
נראה שזה כן מחזיר אדר ב', ובכל מקרה זה יחזיר תמיד אדר ב' ולא אדר סתם.
צריך לתקן\לשפר.. -
בJS גם אפשר, מאמין שיש דרך יותר מסודרת ונכונה, זה מה שיצא לי כעת:
const hebm = ['תשרי', 'חשון', 'כסליו', 'טבת', 'שבט', 'אדר א', 'אדר ב', 'ניסן', 'אייר', 'סיון', 'תמוז', 'אב', 'אלול']; const hebc = 'אבגדהוזחטיכלמנסעפצקרשת'.split(''); const toObj = a => Object.fromEntries(a.map((e, i) => [i + 1, e])); const [mobj, cobj] = [hebm, hebc].map(toObj); const toHebCount = n => String(n).split('').toReversed().map((e, i) => cobj[i ? (i * 9) + Number(e) : Number(e)]).toReversed().filter(Boolean).join('"').replace('י"ה', 'ט"ו').replace('י"ו', 'ט"ז').padEnd(2,"'") const [d, m, y] = Intl.DateTimeFormat('en-u-ca-hebrew', { year: '2-digit', month: 'narrow', day: 'numeric' }).format(new Date()).split(' '); console.log(d, m, y); console.log(toHebCount(d), mobj[m], `תש${toHebCount(y)}`);
עריכה: יש באג עם חודש אדר, ראו בהמשך
ואותו דבר כפונקציה שמקבלת תאריך ומחזירה עברי:
עריכה: הפונקציה תוקנה, ונראה שמחזירה תאריך תקין תודה ל @dovid על התיקונים שהוסיף.const getHebDate = date => { const [mobj, cobj] = [['תשרי', 'חשון', 'כסליו', 'טבת', 'שבט', 'אדר', 'ניסן', 'אייר', 'סיון', 'תמוז', 'אב', 'אלול'], 'אבגדהוזחטיכלמנסעפצקרשת'.split('')].map(a => Object.fromEntries(a.map((e, i) => [i + 1, e]))); const toHebCount = n => String(n).split('').toReversed().map((e, i) => cobj[i ? (i * 9) + Number(e) : Number(e)]).toReversed().filter(Boolean).join('"').replace('י"ה', 'ט"ו').replace('י"ו', 'ט"ז').padEnd(2, "'"); const [d, m, y] = Intl.DateTimeFormat('en-u-ca-hebrew', { year: '2-digit', month: 'narrow', day: 'numeric' }).format(date || new Date()).split(' ').map(Number); return `${toHebCount(d)} ${m > 5 ? [0, 3, 6, 8, 11, 14, 17].includes((5700 + y) % 19) && [6, 7].includes(m) ? m === 6 ? "אדר א'" : "אדר ב'" : mobj[m - 1] : mobj[m]} תש${toHebCount(y)}`; }
console.log(getHebDate(Date.now() + 1000*60*60*24*3));
-
@ASS ייתכן שיעזור אם תבהיר את השאלה בכמה פרטים.
- האם אתה מעונין לשמור על השרת קובץ בפורמט PDF?
או טקסט פשוט עם הHTML הסופי? - אם אתה מעונין שהתוצר ייווצר דווקא בצד הלקוח, ויישמר עותק בצד השרת? או שכפתור הורדה זה גם אפשרות טובה?
- האם אתה יכול להתקין על השרת כל תוכנה שתצטרך?
- האם אתה מעונין לשמור על השרת קובץ בפורמט PDF?
-
@חנון-המרבה
אולי אתה פשוט מחפש את זה.
זה עובד, אני לא הצלחתי למצוא דרך שהכתובת תהיה יחסית.
זה גם מציג הודעה בפעם הראשונה (ואז אפשר לסמן שלא יציג בפעם הבאה). -
@ivrtikshoret כתב בפתיחת קובץ מקומי דרך JS ב-HTML:
אתה כותב לו הרבה פתרונות כאשר אין לך בכלל מושג מה הוא רוצה לעשות עם הקובץ הוא כתב שהוא רק רוצה לפתוח,
ולכן שאלתי אותו מה המטרה שנוכל לענות לו..הייתי במקום שלו, לא זוכר מתי ולמה. זה תהליך שעוברים אנשים..
חושב שכככל שידע מהר יותר מה רעיון מעשי ומה לא, יהיה לו יותר קל "להיפרד" מהרעיון "שלו" ולחשוב טוב על הפתרון שהכי טוב לו מבין הפתרונות האפשריים (הרבים) הקיימים. -
@חנון-המרבה כתב בפתיחת קובץ מקומי דרך JS ב-HTML:
ולגבי התשובה שלך, אין לי קובץ אקסל פתוח, אני רוצה לפתוח קובץ קיים מחדש.
אם זה צריך לרוץ בעמדה מקומית (כלומר אתה כותב את זה עבור מחשב בודד), תתקין שם שפת שרת כלשהי, למשל nodejs, ותכתוב סרבר קטן שמקבל בקשה מהדף שלך וכותב אותה לקובץ חדש.
תוכל לעשות שהוא יופעל בעליית המחשב, וגם שיהיה ניתן לפתוח אותו בעזרת קישור (שהוא ישרת את הקובץ HTML ולא קובץ מקומי) אם תרצה. -
אין. יש פעולות מקלדת בתוך הטאב שבו פועל הדף שלך (מלבד הגדלת סרטון למסך מלא.. שזה גם נחשב בתוך הטאב שלך, זה משפיע רק על התצוגה, ולא על המחשב והקבצים). ואתה גם יכול ליזום אותם, אבל לא תוכל ליזום את אלו שמשפיעות מחוץ לטאב שבו הסריפט שלך רץ.
ליתר דיוק - אין משהו מוכר. אולי לNSO/NSA יש מידע בנושא. -
@חנון-המרבה כתב בפתיחת קובץ מקומי דרך JS ב-HTML:
השאלה אם אפשר בצורה אחרת ע"י הדמיית מקשי מחשב, במאקרו יש כזה דבר sendkey שזה מבצע פעולות מקלדת כמו Ctrl+A שזה בוחר הכל וכדו', השאלה אם הJS זה גם קיים או שזה לא קיים.
תודה על התשובות המהירות.אם תפרט (או תפתח אשכול ייעודי) על הצורך הספציפי, יציעו פתרונות חלופיים.
פתרון אחד אפשרי (כמובן תלוי סוג השימוש המדובר) הוא שבקובץ הHTML יהיה מקום להדביק, ויצטרכו להעתיק מתוך האקסל.
זה קל מאד לביצוע, ועוד מעלה שאפשר לבחור בדיוק מה להעתיק.
כמובן החסרונות רבים וזה מתאים לשימוש יותר אינטראקטיבי ופחות לסקריפט שאמור לעבוד לבד. -
https://robomongo.org/
מתמונות ברשת נראה שבתוכנה הזו יש אפשרות להשתמש בssh tunnel מובנה בUI. -
tunnel ssh יכול לפתור את הבעיה (הוא פותח פורט במחשב שלך, שמעביר את הנתונים ישירות אל הפורט בשרת, ומבחינת הקוד שלך הDB הוא לוקאלי). יש עוד תוכנות נוספות שמאפשרות את זה.
-
כדי להבהיר את המונחים הרלוונטיים:
מייל שנשלח, נשלח ממכונה שיש לה IP ספציפי, וזה הדבר היחיד שמזהה אותה חד ערכית. מכיון שהתקשורת בוצעה באמצעות פעילות TCP אל המכונה המקבלת את המייל.
הדומיין של השולח, מופיע בגוף התקשורת, אבל הוא לא הוכיח את זהותו. המטרה של SPF הוא להוכיח שכתובת הIP הזו מורשית לשלוח מיילים בשם הדומיין הזה. לכן SPF יצביע על IP, או על דומיין אחר שבו יהיה הצבעה על IP.לגבי השאלה, לא ברור למה קראת "שרת דואר" האם שרת שמקבל מיילים או ששולח, או שניהם.
-
רשומת הspf עצמה תוגדר בהגדרות הדומיין שרשום בתוך המייל שהוא השולח. ובערך של הspf אמור להיות כתוב דומיין כלשהו, ולדומיין זה צריך להיות רשומת spf (אצלו) שאומרת מי הוא הIP שמורשה לשלוח בשמו.
או שהIP ממנו נשלח המייל יהיה רשום ישירות בspf של הדומיין שרשום בתוך המייל שהוא השולח. -
@aaron כתב באיך לממש תהליך פיתוח ודילוור גמיש ומהיר בלי להיות מומחה לתשתיות\לעבוד קשה:
docker context use develop
תודה, לא הכרתי את זה.
@dovid כתב באיך לממש תהליך פיתוח ודילוור גמיש ומהיר בלי להיות מומחה לתשתיות\לעבוד קשה:
אשמח שתפרט את הקווים העיקריים של המורכבויות שאתה מתאר בהבדלים בין השרת לקליינט
משום מה להיות תלוי בשירות חיצוני לא נשמע לי יותר בריא. אבל נשמע מכם שאני לגמרי טועה.
למשל אם לא משתמשים ברגיסטרי של דוקר, זה הופך להיות באמת מורכב כל פעם למחוק את הקונטיינר הקודם, את הimage והכל מחדש.@aaron כתב באיך לממש תהליך פיתוח ודילוור גמיש ומהיר בלי להיות מומחה לתשתיות\לעבוד קשה:
לשמור שינוים בשרת GIT זה פרקטיקה מומלצת בכל מקרה.
כמובן שהפרוייקט נשמר בremote, אבל אין לזה קשר לCD מבחינתי..
בשני ההצעות הראשונות זה הופך להיות תלות מלאה, ואני מכיר את הדרכים האלו, ואכן כל מי שאני מכיר (שזה לא הרבה) משתמש בהם (אם זה הדרך הנכונה אז שיהיה ככה).
לתומי חשבתי שכל מה שאני יכול לעשות דרכם, אני יוכל לעשות גם בלעדיהם. -
אני מחפש את הדרך הנכונה או הכי פחות כואבת, לפתח\לתחזק אפליקציית FS שכל כולה באחריותי (נניח לצורך הדוגמה שהיא מבוססת vue - node/express - mongo), ולדלוור את השינויים לשרת (דרך SSH) בלי בלאגן (שיהיה כזה npm run deploy.. ).
לצורך הפשטות נניח שניהול הגרסאות הוא בGIT לוקלי, ואין הבדל בין המערכת שלי לזו שבשרת. כמובן שהמציאות הרבה יותר מורכבת, וגם docker מעורב (אם זה רק עוזר - הכי טוב).
כרגע התהליך שישנו מורכב מהרצה של כמה וכמה פקודות, בסביבת הפיתוח ,וגם בשרת, אשמח להצעות ייעול (לפרוייקטים עתידיים בעיקר).
דרכים לאבטחת שימוש בapi
דרכים לאבטחת שימוש בapi
קבלת תאריך עברי של היום בשפת JS
קבלת תאריך עברי של היום בשפת JS
קבלת תאריך עברי של היום בשפת JS
קבלת תאריך עברי של היום בשפת JS
קבלת תאריך עברי של היום בשפת JS
שמירת חשבונית בעיצוב HTML בשרת
פתיחת קובץ מקומי דרך JS ב-HTML
פתיחת קובץ מקומי דרך JS ב-HTML
פתיחת קובץ מקומי דרך JS ב-HTML
sendkey ב-JS
פתיחת קובץ מקומי דרך JS ב-HTML
גישה מהמחשב למסד MongoDB בשרת
גישה מהמחשב למסד MongoDB בשרת
עזרה בהגדרת רשומת SPF
עזרה בהגדרת רשומת SPF
איך לממש תהליך פיתוח ודילוור גמיש ומהיר בלי להיות מומחה לתשתיות\לעבוד קשה
איך לממש תהליך פיתוח ודילוור גמיש ומהיר בלי להיות מומחה לתשתיות\לעבוד קשה