@תהילה
תכבדי את הבמה פה, זה לא צאט של חברים זה פורום מקצועי לדיונים
ולא לדרמות בשידור חי.
מה את באמצע? מה היא הבעיה? תתארי פרטים במקרה של בעיה. אם אין בעיה אל תכתבי כלום, תחכי בסבלנות לסיום הפעולה.
@תהילה
תכבדי את הבמה פה, זה לא צאט של חברים זה פורום מקצועי לדיונים
ולא לדרמות בשידור חי.
מה את באמצע? מה היא הבעיה? תתארי פרטים במקרה של בעיה. אם אין בעיה אל תכתבי כלום, תחכי בסבלנות לסיום הפעולה.
אני לא רואה סיבה לצחוק, יש אנשים שבהחלט יכולים להיות נתונים למתקפה כזו.
יש שלוש צורות האזנה אפשריות:
א. בטלפון חכם, תוכנה בטלפון שמעבירה הכל (כולל וידאו ושמע אף לא באמצע שיחה) לגורם התוקף.
התוקף צריך לגרום לבעל הטלפון להתקין את התוכנה - בני גנץ נפל כנראה בנקודה הזו.
לממשלות יש יכולת לשים את התוכנה עוד במפעל, וכמה ארצות בעולם כמו ארה"ב עושים בדיוק ככה.
ב. בכל סוג טלפון ניתן להאזין לתשדורות הרדיו בין בטלפון לאנטנה הקרובה ולהיפך. החל מדור 3 ישנה הצפנה אבל אפשר להתגבר עליה עם ציוד מתאים.
ג. להתחזות לאנטנה (ובפועל להיות רק תיווך) וככה לקבל הכל, וגם הצפנה רצינית לא עוזרת פה - חוץ מהצפנה ברמת אפליקציה מקצה לקצה - זה כמעט לא קיים.
האפשרות הראשונה היא הכי קלה, עם מעט יכולת טכנולוגית לבניית אפליקציית ריגול או יכולת כספית לרכוש אחת כזו, אפשר ככה לקבל הכל. האיום הזה רלוונטי לטלפון חכם בלבד עם תקשורת אינטרנט.
האפשרות השניה והשלישית רלוונטיות אותו דבר לכל סוגי הטלפונים. למעט שבטלפון חכם ניתן לדבר דרך תוכנה (שגם לצד השני יש אותה) ואז התקשורת מוצפנת לגמרי.
לסיכום, לא לדבר בטלפון דברים רגישים ברמה גבוהה מאוד.
@יהודי-טוב יש שתי חלקים:
א. התשתית הפנימית
ב. רוחב הפס החוצה
בשביל התשתית הפנימית תיאורטית אפשר לחבר בכל ראוטר המון מחשבים, אבל אם כולם פעילים הוא יתחיל לעבוד לאט וגם יתחמם מאוד כמדומני.
ראוטר מסחרי (לא דוקא פורטינט שהוא עם דגש על מדיניות וחומת אש והוא יקר, כל ראוטר מקצועי במאות שקלים אמור להיות טוב) טוב להרבה מחשבים אבל בד"כ אין להם חיבור ישיר לVDSL אז צריך להגדיר את הראוטר הפשוט כגשר והוא מספק את האינטרנט החוצה (הWAN).
בנוסף צריך לקנות רכזת רשת כדי לחבר טכנית את הכבלים כי לראוטר בד"כ אין הרבה שקעים.
בשביל התעבורה החוצה, קח בחשבון שמה שיש היום לכל לקוח סטנדרטי (40/100 מגה) היה פעם חיבורים של משרדים גדולים. כלומר אפשר להסתפק במועט, אלא שדפי האינטרנט מתחשבים בקדימה, ובד"כ עמוסים וכבדים יותר (וזה עוד בלי העלאות למיניהם של דרופוקס וגוגל דרייב) וממילא גלישה במקביל של כולם תגרום לך לרצות משהו יותר חזק, אבל זה לא חובה וזה בהחלט החלטה שניתן לדחות עם חויית הצורך.
אגב, בראוטר מקצועי תוכל לחבר יותר מתשתית אחת (פשוט מזמינים מבזק עוד קו) עם איזון עומסים וככה על כל חיבור יש כאילו 15 משתמשים.
כל זה כתבתי לך כחובבן, מאוד מומלץ בשביל 30 מחשבים לפנות לאיש רשת מקצועי (ודוקא אם המקצועיות ודאית...), לשלם לו על ייעוץ ואולי התקנה סכום של כמה מאות, ולהימנע מעוגמת נפש רבה (למשל, אתה יכול במשך שנים לסבול מחצי מהמהירות למשל בגלל הגדרה או חיווט מטופשים).
הדפדפן גורם לכך שהקשר בין המשתמש לאתר הוא לא "דף חדש", אלא משפיעים עליו ביקורים מהעבר, בכמה אופנים:
א. עוגיות
כשנכנסים לאתר, האתר מבקש מהדפדפן לשמור מזהה טקסט עם/בלי מידע נוסף, ולתת לו אותו בכל ביקור נוסף. בביקור הנוסף (שזה אפילו רגע אחרי, בריענון של הדף או ניווט לדף אחר באתר וכדומה) הדפדפן שולח לאתר את המידע הזה וככה האתר יודע שהמבקר כעת הוא אותו אחד מזה שלפני כן. זה מאוד חשוב, ככה האתר לא מבקש כל שניה שם וססימה, וגם זוכר לעיתים הגדרות שונות (למשל נושאים שלא נקראו בפורום גם כשגולשים כאורחים).
ב. מטמון
בדף אינטרנט יש בד"כ קבצים מצורפים מסוג תמונות, סגנונות, ותסריטי קוד. בד"כ כדי לחסוך טעינה ארוכה וכפולה הדפדפן שומר את הפריטים הללו כשהם מתקבלים במחשב של הגולש, ועושה בהם שימוש חוזר בביקור הבא במקום להורידם שוב מהאתר.
ג. אחסון מקומי - LocalStorage
דף אינטרנט יכול לשמור מידע העדפות וכדומה במחשב ע"י קוד. זה דומה מאוד לעוגיות רק שזה מקומי - הדף שומר ע"י קוד והוא גם טוען בעת הצורך ולא האתר המרוחק.
כל זה, בגלישה בסתר, נקיים לחלוטין מגלישות קודמות - כמו "דף חדש".
ראשית, ההגדרות האישיות באתר לא משפיעות, וגם הרבה בעיות לעיתים נפתרות מ"התחלה חדשה" בדומה להדלקת המחשב מחדש.
כמו"כ תוספים בברירת מחדל לא פעילים בגלישה בסתר, מה שנותן עוד נקודת צאנס לפתרון בעיות.
כתגובה לניחוח דבריו של @by6199 שבז לחשדותיי "המוגזמים" וטרחנותי שבזכותה הפורום פה סטרילי.
כל מה שחשבתי בקשר לספאמותו של הטקסט, עדיין בתוקף. הדבר היחידי שטעיתי זה הלינקים הקצרים שלא היו מוכרים לי (אני כגולש נטפרי לא נתקל בכלל בלינקדאין). בזה טעיתי.
ומה יש אם יש טקסט חביב שכתב איזה מישהו לשם תועלת? שזה מציף את המרחב בדיסאינפורמציה. כל רגע המלצה אחרת על המקודם התורן. ברגע שיש אינפלציה לערכו של התוכן וכל אחד יכול לצטט כל דבר בלי שום אחריות ובדיקה, תוך "חסד" למקור שיש לו טובת הנאה מהפצת השקר היפה שהוא כתב, אז כל המילים שלי ושל כל משתמש פה הופכים לבעלי משקל נמוך עד שלילי, כל מילה והסבר הופכים לחשודים כמילות שבח של מוכר על סחורה גרועה שהוא מעוניין להיפטר ממנה.
הטקסט שפתח את הנושא הוא מאוד מאוד ספאמי בניסוחו ("הכנתי לכם את הרשימה הבאה:Google AI!!!"),
מכיל טקסט שרובו שיווקי ולא אינפורמטיבי (ודאי לא בגובה העיניים), וגם לכלי האחרון (1 מתוך ארבעה!) אין קשר לAI.
התואר של הצביקה (מה זה "מערך" מודיעין הסייבר) והמילים המפוצצות על מקום העבודה הרשמי שלו,
ומה הערך של ציון ערכו בקריירה כשהטקסט בכלל לא שלו? ולמה בציטוט אין הפניה כנה למקור הדברים. כל זה בצדק הרגיש לי ספאם, ואני עדיין עומד מאחורי האינסטינקטים שד' חנן אותי.
מי שמסתכל עלי כמשועמם טרחן אולי צודק, אבל הוא לא יכול לבוז לי אם הוא נהנה ממעשה ידי.
הבעיה היא אכן רק בתוים עבריים.
אם תשנו את מיקום ההורדות לנתיב בלי תווים עבריים, הכל יעבוד טוב.
למעט הורדות שבשם הקובץ יש עברית, וגם אז תוכלו לעשות שמירה בשם ואז לתת שם לועזי ומיקום לועזי.
אני, בJS ובצד לקוח בפרט, אני לא מתעניין יתר על המידה ב"מתחת למכסה המנוע".
כיון שאני מאוד מחבב את angularjs אני יפרוס את משנתי בעניינו:
עבודה על דפי אינטרנט עם דינמיות (קרי JS)
בנויים משפת ריצה (שזה JS פרוצדורלי או פונקציונלי), ושפת תצוגה של חזות המסמך (שזה קוד הצהרתי שכולל HTML+CSS).
התקשורת בין הDOM שזה המסמך כשהוא מוצג בדפדפן, לבין הקוד, נעשית במגוון דרכים איומות שהחסרונות שלהם הם:
א. חיבור חזק מידי בין קוד הריצה לבין שפת התצוגה. שינוי בעיצוב גורר שינויים בקוד וליהפך.
ב. פיזור: כל התנהגות יכולה להיווצר בכמה מקומות, יכול להיות הרשמה לאיורעים במקומות רבים, ואם יש כמה קבצי קוד צריך פשוט לעבור שורה שורה לפעמים כדי להבין למה כשעושים X קורה Y.
ג. הסנכרון בין המידע לבין התצוגה מייגעים מאוד, כל שינוי במידע צריך "לרדוף" אחרי התצוגה ולהיפך.
כמו כן, השימוש בJS בצד לקוח קשה מאוד. מדובר בשפה ישנה פרימיטיבית בהמון נושאים, וכל דבר קטן מחייב הרבה קוד. ישנם המון ספריות שמקלות את החיים, אבל אין הרבה שהם alll in one.
עד כאן הרקע.
בשביל לפתור את בעיית הקשר בין שפת הקוד לשפת התצוגה נוצרו ספריות שהתפקיד שלהם היה binding מן אוטומציה קוסמית שמחברת את התצוגה לקוד, כשבתצוגה מצהירים על שמות וכדומה, ובקוד מחברים את השמות לאובייקטים באופן שהתצוגה "עוקבת" כביכול אחרי המידע.
בשביל לפתור את הבעיה של JS יש ספריות רבות כמו jQuery שנחשבו all in one אבל בהיבט מצומצם של ניהול הDOM יותר מאשר בהיבט של ניהול כל האפליקציה - קרי SPA, שבו הקוד אחראי לא רק לצבוע אלמנט, אלא ממש לעשות Buisness Logic.
למשל, משימות טריוואליות של מילוי התצוגה במידע נראות גם בjQuery ממש כמו איזה hack. שום דבר לא מובן מאליו כי נקודת המוצא הייתה שמידע אמור להגיע עם הדף ולא בajax.
angularjs הגיעה בשביל זה והיא עושה זאת מאוד מאוד טוב.
כעת לשאלות:
@avi-rz השאלה שלך כוללת הנחות שגויות.
MySql אינו קשור או תלוי לphpMyAdmin.
(phpMyAdmin זה סה"כ קליינט - כלי חמוד לצפות בנתונים, ולהריץ שאילתות וכדומה).
MySql לא מבוסס על PHP, והוא גם מודרני ומהיר (לא פחות מנוד) עד כמה שזה מתאפשר.
mongo אכן יותר מהר בלי קשר לjson מסיבה פשוטה: אם אתה בתור באיזה קיוסק ואתה מבקש את החומרים של טוסט תקבל אותם מיידית. אך אם תבקש טוסט תתבקש להמתין.
בעוד mysql בנוי באופן שהרבה לוגיקה של אופי הנתונים באחריותו, ולעומת זאת מונגו בבסיסו לא מתערב בכך (בשניהם זה ממש לא מדוייק, בהתאם לשימושים ולשכלולים שיש בהם כיום לשני הצדדים - מונגו היום יכול היום להיות מאוד מתערב אבל עדיין פחות מmysql. לעומת זאת mysql לא יכול להיות "גולמי", הוא בנוי להיות "מבוגר אחראי" ויש לזה מחיר).
אם אחרי שהנתונים אצלך ביד או לפני שאתה מכניס אותם, אתה עושה כל מיני בדיקות והתאמות וותיקופים, אתה מוצא את עצמך עושה את העבודה שmysql עושה. לפעמים זה שווה, בגלל שיש חלק משמעותי של פעולות בהם לא נדרשת שום לוגיקה, אלא רק שליפה וכדומה.
sqlLite זה מסד נתונים מוטמע, כלומר במקום שיש את האפליקציה שלך ולצידה תוכנה אחרת של מונגו או של mysql אז האפליקציה שלך עצמה אחראית לגמרי על ניהול הנתונים (ספריה של sqlite דואגת לזה, אבל זה בעצם התהליך שלך מריץ הכל).
יש לזה רק חסרונות מבחינת ביצועים, המעלה של זה היא ניידות ועצמאיות (לא צריך להגדיר כלום בשרת אליו אתה מעביר את האפליקציה). זה נח מאוד לאפליקציות רזות ו/או שצריכות לפעול על סביבה של מחשבים לא "שרתיים". לשם דוגמה תוכנת דסקטופ שמפיצים והיא צריכה מסד משתמשת במסד הזה - כמו גוגל כרום.
@yossiz אתה לא עוקב ואתה לא יודע, ובגלל שנשמע לך הזוי אתה מרשה להחליט שאני סה"כ נסחפתי ברוח התקשורת של המזגר אליו אני שייך ואני לא מבדיל בין קידום יעדים על חשבון לבין קידום יעדים באופן פוגע, תודה.
אני חושב שבאופן קבוע אתה פוטר את עצמך מבדיקה כשנראה לך רוח של עדריות בצד כל שהוא ומייד אתה נכנס ב"איפכא מסתברא" ו"מבקש להרגיע" באיצטלה של המחקריות המוכרת שלך. תנסה להישאר גם שמה טיפוס חוקר ובדוק את הנתונים!
ראשית אני בעד המס, ואני נחשב ל"סביבתי".
אולי העובדה שרוב המדינה (ואני בתוכם) תומך עקרונית בחוק, ואולי מרוב חרדה מהתחושה החרדית שכולם נגדם, אתה נוטה לחשוב שמדובר בחוק ישר ויפה שכל הפחות הינו בגדר של ניצול השלטון ל"קידום יעדיו" ולא חלילה ל"פגיעה באחר", שזה הזייה נוסח מתנגדי החיסונים.
נתחיל עם הגישה הקיצונית שלך, שהחוק באמת נועד לטובת הסביבה:
א - החוק לא מגיע בכלל ממשרד הסביבה אלא ממשרד האוצר. הוא אפילו לא נעשה בתיאום עימו, ומטרתו המוצהרת היא הכנסה (מקור לדוגמה :
יש לציין כי מרידור הזכיר את המס על כלים חד פעמיים יחד עם הטלת מס על סוכר – שניהם כחלק מהפתרון לבעיית הגירעון בתקציב המדינה. כלומר, נראה שהאוצר מנסה 'לרכב' על מגמות חדשות בחיפוש שלו אחר פתרונות יצירתיים לסגירת חורים בתקציב. מעניין לדעת שהמשרד להגנת הסביבה לא מעורב במהלך הזה והוא מסר בתגובתו כי: "מדובר ביוזמה של אגף התקציבים במשרד האוצר שטרם סוכמה וטרם נדונה ברצינות עם משרד הגנת הסביבה". התגובה המלאה מופיעה בהמשך.)
ב - בעבר ההמלצות להורדת כמות החד פעמי לא הכילו חוק בסגנון, או הכילו אותו בתחתית הרשימה אחרי צעדים הרבה יותר פשוטים כמו הסברה (מקור לדוגמה)
ג - למיטב ידעתי הגופים הירוקים לא עומדים מאחורי החוק (והם עומדים מאחורי הרבה חוקים), וגם לא כ"כ שמעתי קולות שמחה מכיוונם. ראה למשל באתר החרדי הזה, ציטוט של מנכ"ל גרינפיס ישראל (הוא לא חרדי, הממשלה בצד שלו).
ד - לא נעשו שום צעדים או הסברה לעזור לאזרחים לבחור אחרת, זה כאמור רק יפגע במטרת החוק. למשל יש ח"פ אקולוגי יקר יותר, שאותו לא יסבסדו כמובן במחיר ההכנסה מהח"פ הרגיל, וגם לא יסבסדו מחיר של מדיחי כלים וכדומה בהכנסות המס. אני לדוגמה הייתי מחוקק שכל חנות חייבת להציב בצד מוצרי חד פעמי "אסורים" מוצרים חילופיים מותרים.
אני מצטט לך מסקנות של דוח נוסף (שמזלזל בהשפעה של ייקור לטובת הסביבה בפרט אצל חרדים):
לאור ניתוח הנתונים וסקירת הספרות שהוצגו לעיל ניתן לראות כי ישנו צורך בשינוי מהותי בדפוסי הצריכה
והשימוש של כלים חד-פעמיים בקרב אוכלוסיית ישראל... אך בשלבים הראשונים ובעתיד הקרוב חוק שכזה יכול
לייצר קריאות נגד מהציבור בעקבות חוסר מודעות להשפעה השלילית של כלים אלו. שלושת ההמלצות
להלן חייבות להתבצע יחדיו על מנת למנוע תחושת "שרירותיות" בפעולות הממשלה הנוגעות להעלאת
מחירים. יחד עם זאת, ישנו צורך בחוקים ישירים ועקיפים המסדירים את התנהלות ענף הכלים החד-
פעמיים בדומה לחוקים במדינות אחרות, זאת מכיוון שכיום חקיקה הנוגעת לנושא זה אינה קיימת במדינת
ישראל. על כן נמליץ על מספר צעדים לביצוע בעשר השנים הקרובות.
אני ממליץ לראות את ההמלצות בשביל להבין כמה ה"ירוקים" עניינו פה את הסבתא).
תנסה לחשוב למה אין את החשש הזה במקרה שלנו (א. אם זה רק נגד החרדים זה בסדר ב. יש יותר מידי דברים טובים אחרים בממשלה הזו).
אני מצרף לך קישורים רלוונטיים:
כעת לטענה שלי "מרחיקת הלכת", שלא מדובר בקידום יעדים אלא בניצול הציבור שלא בממשלה למימון הוצאות אחרות שלא מטיבות עימם. אני מודה שאני מחליט זאת בלי הוכחה מתמטית. אני לא יכול להוכיח את זה, כי אם יכולתי החוק לא סביל על הדעת, הרי חייבים שאזרחים נחמדים כמו @yossiz יסברו שבסופו של יום המדינה היא זרוע מבצעת של רצון רוב אזרחיה.
שר האוצר במקרה גמור הינו אביגדור ליברמן. מבטיח לך שבשיחה אישית איתו הוא לא יכחיש שזה בדיוק ככה, אבל זו הבטחה די ריקה כי אתם לא שכנים. אז בא אני אסביר לך איך עובד העולם.
כשמחוקקים חוק בממשלה ואפילו כשמעבירים החלטה בבית ספר או בכל ארגון, עושים דיונים. מי שהכי חשוב לזמן לדיונים האלו זה את הנפגעים לכאורה מההחלטה, צריך לשמוע מה הם אומרים ולראות האם יש להם טענות שלא חשבו עליהם (אינו דומה מחיר יקר לבין בעיה X) ואפילו לנסות לעזור להם בהסתייגויות בחוק.
כמו כן לגופים הירוקים יש רשימה ענקית של מיסים שהם מאוד ישמחו שיטילו, למה מכולם לנבחר החד-פעמי? בכניסה לאתרים ירוקים, תמצא שפע של בעיות במדינה, החד פעמי לא מככב בראשם. יש פליטת הפחמן, ויש את בעיית המחזור, ויש את בעיית הפסולת ועוד. כל המיסים הללו הם מלחמה בכמות האזרחים שתיפגע מחד, ומאידך מכניסה למדינה סכומים יפים. הנוסחה היא למצוא חוק שהאזרחים המזוהים כנפגעים ממנו הם לא אהודים מידי, ולקולם לא יהיה הד רב.
אני מבין אותך. אני גם מאוד נגד לצייר את שרי הממשלה כרודפים את החרדים. גם אילו זה היה נכון לא עוזר כלום, ורק גורם לנזקים, וקל וחומר שלעיתים רבות זה לא נכון ויש פה התרכזות בצרכים העצמיים ושל המגזר ושכחה שיש עוד אנשים ביקום, או שיש פה העידר ענוה מספקת להבין את מעמדינו במדינה, הן במיעוט המספרי אך הרבה הרבה יותר בגלל היחס שחשים כלפינו שאסור להכחיש את קיומו או להתעלם ממנו כשבאים בדרישות.
האמת היא שכן רודפים אותנו טכנית, אבל שזה נורמלי בהתחשב במעמד שלנו, וברמה הירודה של האישים שבדרך כלל אוחזים בשלטון (וכן, הפעם זה הרבה יותר מאי פעם).
אבל מפה ועד לחיות בסרט שאין פה נקמה פוליטית, ושבכלל לא חשבו במיוחד עלינו בחוק, זה כבר רחוק מהאמת לדעתי.
שוב תודה, רק בגללך אני סוטה באופן תמוה לנושא שלא נוגע כלל לא לנושא ולא לפורום....
אני מקבל לאחרונה פעם ביום ויותר דוא"ל של מכירות שכמובן מעולם לא נרשמתי אליהם,
אני כמו ילד טוב כל פעם מבטל רישום שמעולם לא היה למערכת השולחת הלא היא smoove.io, אבל למחרת יש דוא"ל מעסק אחר, כלומר אין ביטול רישום מעסק אחד לעסק השני...
סימון כספאם גם לא מועיל, כי למרות שהכל תחת אותו דומיין, זה מיילים שונים.
המיילים כולם מגיעים מsend.vpcontact.com כך שכעת עשיתי כלל בג'מייל שמוחק אותם ישירות.
מה זה הסיפור הזה? יש רשימת מיילים שמסתובבת ונמכרת למרבה במחיר? איך גוף מסחרי רשמי מעיז לעשות כזה דבר, מיילא אני סתם איש קטן, אבל אין איזה עו"ד חם מזג שיוצא מכליו ועושה לזה סוף?
@שלמה1 ממש לא, זה אומר שאתה כשרוני.
בשביל להיכנס לפורום תכנות צריך להיות אחד שקולל בקללתו של אדם הראשון' ושזה האמנות שהוא בחר בה.
@אשרי יש פה מומחים גדולים יותר מבאייבורי.
רוב ההודעה שלך מבוססת על ההנחה שיש פה איזור דיון חסר בעלי מקצוע בתחום וממילא ניסיון של בעל חדר מחשבים או סוכן מכירות משופשף ועדכני ישפוך לנו הרבה אור על עולם החומרה.
אני חושב שלאייבורי לא תייעץ להתייעץ פה בפורום, אז אנחנו בעמדה דומה.
אם יש לך עצה זה טוב, אבל לשלוח לייעוץ זה טעות - פה זה מקום טוב.
@basis20 זה לא קשור לאינטרנט, איפה שזה עובד זה יעבוד גם כשהמחשב מנותק לחלוטין.
זה בעצם מקבל את התוכן מתוכנה שרצה במחשב שלך עצמו, היא יכולה בתורה לגשת לאינטרנט אבל אם מדובר בסינון ברמת הרשת אז זה גם יסתנן בעצמו.
המושג בויקיפדיה:
https://www.hamichlol.org.il/Localhost
https://en.wikipedia.org/wiki/Localhost
הסבר ארוך:
כשאתה כותב באינטרנט כתובת כמו tchumim.com הדפדפן פונה לשירות של DNS כדי לברר מה כתובתו הפיזית של האתר (כתובת IP). אחרי שהוא יודע מה הכתובת הוא "מתקשר" לכתובת לבקש את תוכן הדף של tchumim.com.
כשאהת כותב localhost אז הדפדפן לא פונה לשירות DNS חיצוני, כי הוא בטבלה של שמות שמורים שיש להם כבר כתובות קבועות מראש. הכתובת היא 127.0.0.1.
אז הדפדפן כעת "מתקשר" לכתובת 127.0.0.1. בעוד כתובות אייפי שונות מפוזרות בעולם וההתקשרות מאתרת אותם בעזרת מנגנון ניתוב, הכתובת אייפי שמתחילה ב127 מצביעה על המכשיר עליו היא פועלת, כלומר המחשב עצמו.
במחשב בו ישנה תוכנה שמספקת שירותי איטרנט, אז בכתיבת localhost אתה תקבל ממנה תשובה את הדף המתאים. במחשב בו אין תוכנה כזו תתקבל ההודעה "לא ניתן לגשת לאתר הזה".
@יעקב-ישראל ראשית צריך להירגע לגמרי, להתקרר ולחשוב מה הדרכים שיש.
גוגל מאפשרים שחזור על פי סימנים של בעלות כמו סיסמה קודמת/הודעה אחרונה שנשלחה וכו' וכאלה דברים אבל זה לקוח לזכרוני כמה ימים. לפי הבהילות שלך אני בטוח שלא נתת לזה הרבה צ'אנס (לא שיתפת למה זה נכשל ואיפה זה אוחז). זה הדרך הכי פשוטה וטובה.
אם הדרך הזו נחסמה, נשאר לנו עוד כמה אפשרויות: מכשיר שבו החשבון עוד מחובר או דיסק קשיח של כזה מכשיר וכדומה, ניחוש סיסמה. ניחוש סיסמה זה אפשרות מצויינת אם עושים זאת בחכמה: מי שבחר את הסיסמה בפעם האחרונה, רושם בקובץ (EXCEL למשל) כל סיסמה שעולה בדעתו שהיא אפשרית. אם פתאום מבריק לו רעיון באמצע החיים, הוא מוסיף לקובץ. כעת כל יום מנסים להיכנס למייל עם שורה אחת או כמה מהקובץ ומסמנים שהם "נוסו".
בדרך כלל, לסיסמא יכולה להיות כמה וריאציות, קובץ עוזר לבדוק שמיצו את הוריאציות הללו כמו סיסמה "אני גדול" וtbh dsuk וכן הלאה.
גוגל לא יכולים לדעת איפה הקובץ, הם רק מזהים בדפי האינטרנט התערבויות שאופייניות לתוכנות זדוניות.
איסט לא מושלם, ואותי כזו הודעה הייתה די מטרידה,
לא חושב שזה קשור להורדה מדרייב.
סליחה על ההפסקה הארוכה, טוב מאוחר מלא כלום...
ראשית לפני ההמשך, במידה ואתם לא יודעים JavaScript, אנא למדו אותה! המדריך הנוכחי הוא לא דרך ללמוד את השפה. בואו למדריך הזה עם ידע מספיק בJS בשביל לכתוב ממש קוד של עשרות שורות. ולא הביישן למד: תרגישו בנח לבקש עזרה אפילו "תת-רמה" בשאלות בפורום. פתחו ניק חדש למקרה של "בושות". כמו"כ כל פיסת קוד פה שאתם לא מבינים מזוית השפה, אסור לכם לחכות, זה לא יובהר בהמשך המדריך בשום צורה.. ת-ש-א-ל-ו! (או תחפשו באינטרנט מצידי).
קודם כל לקלות המצטרפים אנחנו אוחזים בשלב של קובץ בודד בשם app.js שמכיל את הקוד הבא:
const http = require('http');
var list = [];
function handleAllRequest(req, res) {
res.setHeader('Content-Type', 'text/html');
if (req.url == '/')
res.write('Hello To List Page!');
else if (req.url == '/add-item')
res.write(`<form method="POST">
Enter the item value: <input type="text" name="the-name" >
<br>
<input type="submit" >
</form>`);
else
res.write('Opss... Not Found!');
res.end();
}
var server = http.createServer(handleAllRequest);
server.listen(3000);
בעת הרצה של קובץ זה בF5 בVSCODE, אפשר להיכנס לכתובות הבאות:
http://localhost:3000/ - רואים כיתוב Hello To List Page!
http://localhost:3000/add-item - רואים טופס ובו שדה בודד, עם לחצן שליחת נתונים. משום מה הכיתוב הוא באנגלית, אולי נגיע להסביר למה. בהמשך הכל יהיה עברית טהורה, אל דאגה!
הטופס הוא מסוג POST שהוסבר לעיל: מתודת POST פונה לכתובת (URL) אבל עם "מסוגלות" לשלוח נתונים בגוף הבקשה, קרי לא בURL. משמעות הצורה היא: נפח בקשה גדול, שיש מוסכמה שאופי הבקשה היא ביצוע פעולה (הדפדפן יתריע במקרה של ריענון, וגם לא ישמור את ה"ביקור" בהיסטוריה).
השליחה לא עושה משהו בינתיים.
וכמו תמיד, שוב הקדמת חובה מייגעת של דברים שכבר נאמרו...
כאמור בהודעה האחרונה בטופס HTML יש שני דרכי שליחה POST וגם GET, אבל שניהם עושים כמעט אותו דבר.
הם לוקחים את ערכי הקלט ואת שמותיהם בהתאמה בפורמט הבא:
שם-שדה-ראשון=ערך&שם-שדה-שני=ערך2&שם-אחר=ערך3&גיל=15
ושולחים אותם לשרת (לכתובת שנבחרה בaction ואם לא נבחרה כזו אז לכתובת הנוכחית).
איך שולחים? רק פה ההבדל במתודה. בGET, זה נוסף לנתיב, כלומר הכתובת כולה נראית למשל ככה:
http://site.com/some-path/add-product?name=camera&value=50
כלומר התוכן מצורף לכתובת אחרי סימן שאלה שמפריד בין הכתובת לבין ערכי בקשת הGET בפורמט האמור.
במתודת POST הכתובת נשארת http://site.com/some-path/add-product בלבד ללא כל תוספת, אבל בגוף הבקשה נוכל לראות* את התוכן הזה שם-שדה-ראשון=ערך&שם-אחר=ערך2&גיל=15 בלי סימן שאלה מקדים.
*איך? אפשר למשל בדפדפן בכלי הפיתוח, בלשונית Network בבחירת בקשת POST בכרטסת Headers למטה תחת Form Data או Palyload.
הערה: שני הקטעים הבאים, הם רשות. לא מזיק בכלל לקרוא אותם..., אבל אפשר להתעייף ולעבור לשיעור 6 - טפסי HTML, צד שרת
הוא תיאורטית ארוך...
המונח גוף הבקשה נקרא בשפת המקצוע body, או גם payload.
הוא בעצם כל תוכן הבקשה, החל מאחרי הכותרות שכמה שקובע איפה נגמר הכותרות זה שורה ריקה.
אין הגבלה עקרונית לגודל בקשה (מעשית יש ברוב המקרים וגם מצד הפרקטיקה), ממילא הPOST מסוגל להעביר הרבה מידע לשרת, בשונה ממתודת GET ששם זה הכתובת עצמה שיש לה הגבלות רשמיות כאלו ואחרות.
למה כל זה משנה כעת? כי כשבאים בnode לחפש את הbody של בקשה (כפי שעשינו במקרה של הurl) לא תמצאו אותו במאפיינים של הreq. למה? כי הוא אפילו לא הגיע לשרת. כלומר מייד כשמתחילה להגיע בקשה, הnode מטפל זה (וזה קורה מהר! כשברקע גוף הבקשה ממשיך להיטען). במידה ונדרש גם תוכן הבקשה, יש לבקש מנוד "להודיע" כשזה ייגמר, ואז להיכנס לפעולה.
הבקשה הזאת לבקש מנוד ש"יודיע" כשהבקשה סיימה להתקבל, נקראת (בעולם התכנות) ל"הירשם לאירוע". כשקורה האירוע - במקרה שלנו סיום קבלת הבקשה מהלקוח, כל מי שהיה "רשום" לקבל הודעה מקבל אותה. צורת הרישום כבר מוכרת לנו, השתמשנו בה בhttp.createServer. סיפקנו שמה בסוגריים של פונקציה שיש להפעיל כאשר קורה אירוע של בקשה חדשה.
צורת ההירשמות הזו של http.createServer נקראת callback, משמעות המילה הזו מקפלת בתוכה call back (קריאה בחזרה): "כשתגמור את מה שאני אומר לך עכשיו, חזור וקרא לX". זה בפועל מממש את רעיון האירוע כי אפשר ככה ל"הירשם" לכל אירוע ע"י שמספקים למי (במקרה שלנו מודול הhttp של נוד) שיודע מתי שיקרה משהו (במקרה שלנו בקשה אינטרנט חדשה) שיודיע לנו - יפעיל את הפונקציה שסיפקנו.
הערה: בדרך כלל callback לא בא לממש את רעיון אירוע שרעיונית הוא רב פעמי (כל פעם שקורא בקשה תפעיל את X), אלא את רעיון המשכיות של פקודה (כשאתה גומר את זה תעשה את זה). ברוב שפות התכנות כשיש שתי שורות קוד, השניה תקרה תמיד אחרי שהראשונה תסיים לחלוטין וגם בJavaScript זה ככה, אולם בJavaScript כל פקודה שקשורה לקלט פלט (קבצים רשת ועוד) היא מסתיימת כביכול מיידית, בחינת "שגר ושכח", אבל עם callback - קרי "מה לעשות כשאני באמת אגמור". אם רוצים שהשורה שלאחריה תקרה רק בסיומה הרי שיש להעבירה לcallback ולא לשים אותה סתם שורה אחריה.
התכונה הזו של נוד שכל דבר שלוקחת זמן יש "להירשם" כדי לבצע דברים בעקבות סיומה, היא מעצבנת הרבה מפתחים שבאים ממחוזות בעלי השקפה שונה, אולם היא עיקר המעלה של נוד בביצועים, והביצועים של נוד הם מדהימים בעיקר במובן הזה. כך שמאוד כדאי לכוף את האזן ולשמוע ולהתרגל עד ש... נהנים.
הקדמה: בין מי שמכיר את נוד, בין מי שלא, וקל וחומר מי שמגיע ממחוזות אחרים, יכול לתהות:
התשובה על 1+2 היא: נוד זה ליבה כה רזה, שאי אפשר לפתח בה משהו אמיתי בלי ספריות.
למה עשו כזה דבר? כי זה הדרך המודרנית בסביבות עבודה ובפרט בקוד פתוח, לעשות הפרדה כלל היותר בין רכיבים ולהימנע ממטריה כוללת של all in one שיש בה כמה נזקים. דמיינו שאנחנו חייבים לקנות את העוף לשבת ואת הסלטים מאותה חברה/חנות.
א. אנחנו נתפשר באחד מהם כי אין לנו יכולת להפריד ולקחת את החנות הטובה לכל אחד מהם, ב. וגם החנות תידרש להיות טובה רק באחד מהם, כי הרי השני כבר "מחוייב". ג. אם אחד ממש יפריע לנו נעזוב את החנות למרות שהשני הוא הכי טוב/זול/מתאים לנו דוקא שמה. ד. היכולת של החברה/חנות להיות טובה יותר בשני תחומים נופלת בהרבה מהיכולת להיות הכי טובים/זולים/מתאימים בתחום אחד
שימו לב למילים "מתאים לנו", כי כמו שבאוכל כל אחד מבין שגם ברמה התיאורטית אין הכל "הכי טוב", שהרי יש מי שמתאים לו ככה ויש אחרת, ככה ויותר זה גם בפיתוח. למרות שיש דרישות נורמליות של רוב היישומים בצרכים, זה רחוק מלהיות אמיתי לכל מקרה. כלומר תמיד יש צורך בהתאמות או בהתנהגות שהיא היפך הצורך הרגיל, ממילא גם אם מתכנתי סביבה הם מלאכים, הרי בשביל שהמוצר שלהם יתאים לכולם תמיד הם צריכים לפתח מאה אלטרנטיבות והגדות לכל יכולת.
לכן כל סביבת עבודה חדשה שמפתחים היום (למעט סביבות שבאות לטפל בחלק שולי או נקודתי של מערכת) נזהרת בעניין הזה - א. לתת חופש מלא למפתח להשתמש לצרכים אחרים בדברים אחרים, ב. להתמקד בנושא אחד ולא להתפזר.
אז אם ככה דרך המלך להשתמש טוב בנוד זה לחבר אליה אליה ספריות מובילות של נושא שאני זקוק לו לפי ההתאמה אלי. מכאן אנו עוברים לשאלה 3, למה אני לא משתמש במדריך פה בספריות, הרי זה לא שייך ככה לכתוב אפליקציה.
התשובה על שאלה 3 כבר נאמרה ברמזים כאלה או אחרים בעבר: המדריך פה אינו לנוד, אלא לפיתוח אינטרנט. כל הסיבה שבחרתי בנוד זה כדי לעקוב אחרי הצרכים ב"קיצורים" וספריות. לראות איפה צריך אותם ובעיקר מה הם עושים, שהשימוש בהם לא יהיה "קסם" שגורם לתלות ולערפל גמור בנבכי העניין אלא כלי שמבינים עם מה הוא מתמודד ומה יכולותיו ותו לא.
אנחנו ממש קרובים לשלב שבו נעבור לשימוש בספריות מפורסמות שיקלו את החיים באופן דרמטי.