בירור | הרצת כמה סקריפטים במקביל
-
@עידו300 אתה מתכוון לא לתפוס גם פורטים פנימיים?
איך שהבנתי עכשיו אתה מדבר על אותה אפליקציה עצמה, ברור שהיא אמורה להאזין רק לפורט אחד, ולפתוח נתיבים נפרדים של GET וPOST
למה בכלל אתה עושה את זה בסקריפטים נפרדים? צריך לסדר את זה כאפליקציה אחת (בקבצים נפרדים בצורה מודולרית, אבל בסופו של דבר זה צריך להיות אפליקציה אחת).לדוגמה:
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.post('/login', (req, res) => { if (req.body.password === process.env.ADMIN_PASSWORD) { req.session.loggedIn = true; res.redirect('/admin'); } else { res.render('login', { error: 'סיסמה שגויה' }); } });העתקתי ממשהו שהיה לי כבר, אבל תפוס את העיקרון.
מצא את ההבדלים מהדוגמה שהבאת מהבינה.
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
-
@ע-ה-דכו-ע כי אני לא יודע בפועל איך לעשות את זה (פעם ראשונה שלי בnodejs) ואני מפחד שאם יכנסו כמה ביחד המערכת תקרוס, ראיתי שהnode בזבזני מאוד הרבה הרבה יותר מPHP.
@עידו300 למה אתה חושב שאם תבנה כמה אפליקציות זה יהיה בזבזני פחות מאפליקציה אחת?
-
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אפשר לעשות כמה GET וכמה POST רק במקום LOGIN שבדוגמה אתה כותב בכל אחד נתיב מתאים.
באופן כללי POST זה כשאתה רוצה לשלוח מידע לשרת, וGET זה כשאתה רוצה לקבל מידע.
-
@עידו300 למה אתה חושב שאם תבנה כמה אפליקציות זה יהיה בזבזני פחות מאפליקציה אחת?
@A0533057932 נראה לי פחות כבד 4 קטנים מאחת מסורבלת
-
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
-
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5
אפשר לעשות כמה GET וכמה POST רק במקום LOGIN שבדוגמה אתה כותב בכל אחד נתיב מתאים.
באופן כללי POST זה כשאתה רוצה לשלוח מידע לשרת, וGET זה כשאתה רוצה לקבל מידע.
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
-
@A0533057932 נראה לי פחות כבד 4 קטנים מאחת מסורבלת
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@A0533057932 נראה לי פחות כבד 4 קטנים מאחת מסורבלת
0
ע
עידו300
@ע-ה-דכו-ע לא הבנתי את הענין של get וpost, מבחינתי הכל יכול להיות get, ואם זה בשביל שיהיו 2 אפשרויות, אז אני צריך יותר... עוד לא יודע בדיוק כמה אבל לדעתי איזה 4-5אני מבין מהבינה מלאכותית שהאפליקציה ההיא תנתב בפנים את הבקשה ככה שלא יצטרכו להאזין לפורט
תחפור עוד קצת על הבסיס של נוד,
מה שאתה מחפש זה לא להריץ סקריפטים, אלא אפלקציית נוד.
תנסה להבין עוד קצת על הבסיס, ואז הכל יסתדר לך..
בהצלחה.
-
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
@עידו300 בפייתון עושים על ידי FASTAPI למשל
בNODE אמור להיות דברים דומים -
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
לדוגמה
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });ככה פתוח לך הכתובות הבאות:
x.com/login
x.com/logout
x.com/register -
@עידו300 כתב בבירור | הרצת כמה סקריפטים במקביל:
@ע-ה-דכו-ע כן, את זה איך עושים (הניתוב)?
לדוגמה
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });ככה פתוח לך הכתובות הבאות:
x.com/login
x.com/logout
x.com/register@ע-ה-דכו-ע טוב, אח"כ אחפור קצ תלראות מה עושה מה שאתה כתבת ומה עושה מה שכתבה לי הבינה, אולי זה הפתרון.
תודה לכולם!
-
gpt מתעקש על הדרך שהוא כתב.
תראו https://chatgpt.com/share/68f7352d-e9cc-8000-8072-3de179fe6480 -
gpt מתעקש על הדרך שהוא כתב.
תראו https://chatgpt.com/share/68f7352d-e9cc-8000-8072-3de179fe6480@עידו300 הוא אמר לך בדיוק מה שאמרו לך פה
אני חושב שאני לכל הפחות לא מבין מה אתה מתכוון -
@עידו300 הוא אמר לך בדיוק מה שאמרו לך פה
אני חושב שאני לכל הפחות לא מבין מה אתה מתכוון@A0533057932 אמרו לעשות ככה
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });והוא אומר שככה לא טוב לי.
את הרעיון הכללי כן אמרו, רק החלק הטכני שונה. אולי כי הצרכים שלי שונים ממה שהיו צריכים כשכתבו את הקוד הנ"ל.
אני מבין שזו הדרך המקובלת.
-
@A0533057932 אמרו לעשות ככה
app.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });והוא אומר שככה לא טוב לי.
את הרעיון הכללי כן אמרו, רק החלק הטכני שונה. אולי כי הצרכים שלי שונים ממה שהיו צריכים כשכתבו את הקוד הנ"ל.
אני מבין שזו הדרך המקובלת.
@עידו300 הוא הסביר לך את ההבדל בין הגדרת ראוטרים
להגדרת נתיביםapp.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });זה הגדרת נתיבים
אני לא מכיר NODE טוב אולם זה נראה שהוא מחזיר דף כל שהוא
ובאותו מידה אתה אמור להצליח לשנות את זה
לapp.use('/manageSellers', manageSellers);או משהו דומה
כלומר אתה פתאום נכנס לשאלה האם התשובה שחוזרת היא HTML או שהיא מפעילה פונקציה והתוצאה שלו חוזרת
או שלא חוזר שום דבר וכד'
אולי אם תתחיל מהתחלה ותפרט בדיוק מה אתה רוצה לעדות יוכלו למקד אותך יותר -
@עידו300 הוא הסביר לך את ההבדל בין הגדרת ראוטרים
להגדרת נתיביםapp.get('/login', (req, res) => { res.render('login', { error: null }); }); app.get('/logout', (req, res) => { res.render('logout', { error: null }); }); app.get('/register', (req, res) => { res.render('register', { error: null }); });זה הגדרת נתיבים
אני לא מכיר NODE טוב אולם זה נראה שהוא מחזיר דף כל שהוא
ובאותו מידה אתה אמור להצליח לשנות את זה
לapp.use('/manageSellers', manageSellers);או משהו דומה
כלומר אתה פתאום נכנס לשאלה האם התשובה שחוזרת היא HTML או שהיא מפעילה פונקציה והתוצאה שלו חוזרת
או שלא חוזר שום דבר וכד'
אולי אם תתחיל מהתחלה ותפרט בדיוק מה אתה רוצה לעדות יוכלו למקד אותך יותר@A0533057932 נכנסתי לזה רק בגלל שהוא כתב שזה ההבדל...
כמו שכתבתי, אני צריך ששתי אפליקציות (בתכלס 4-5) יפעלו וששתיהן ישבו על אותו פורט, זה הכל.
אז לא ידעתי שיש הבדל אם אני צריך להציג HTML או לא. אז עכשיו אני מוסיף שהם ממשק API. אבל השאלה אותה שאלה, איך שתיהן ירוצו במקביל בלי להפריע אחת לשניה. -
@ע-ה-דכו-ע טוב, אח"כ אחפור קצ תלראות מה עושה מה שאתה כתבת ומה עושה מה שכתבה לי הבינה, אולי זה הפתרון.
תודה לכולם!
-
@עידו300
אשמח לדבר איתך על מה שאתה בונה. (נראה לי אני בונה כבר שנים את מה שאתה מתכנן)..
אם תסכים במייל אני יעלה לכאן
קראתי את הקוד שלך למטה ובסוף אנחנו לא על אותו פרויקט -
@A0533057932 נכנסתי לזה רק בגלל שהוא כתב שזה ההבדל...
כמו שכתבתי, אני צריך ששתי אפליקציות (בתכלס 4-5) יפעלו וששתיהן ישבו על אותו פורט, זה הכל.
אז לא ידעתי שיש הבדל אם אני צריך להציג HTML או לא. אז עכשיו אני מוסיף שהם ממשק API. אבל השאלה אותה שאלה, איך שתיהן ירוצו במקביל בלי להפריע אחת לשניה.@עידו300 כפי שנראה הידע החסר שלי בnode לא מאפשר לי להבין אותך
אז אני ינסה להסביר שוב את מה שאני מכיר
כי לפי מה שאני יודע אין הרבה הבדל בלוגיקה בין פייתון לNODE בחלק הזהיש לך אפליקציה או שרות שאתה רוצה שיפעל כל הזמן
ויוכלו לגשת אליו דרך הרשת והוא יענה תשובות ויבצע פעולות?מעולה לדבר הזה קוראים אפליקציה \ תוכנה \ סרוויס \ כל שם שיש לו
לדבר כזה יכול להיות המון נתיבים והמון פרמטרים
אבל אין שום צורך שיהיה לו הרב פורטיםפשוט עליך להגדיר נתיבים שונים לכל קריאה
אפשר על ידי הגדרת קבצי ראוטר (ואז למשל אתה מנהל את כל החלק של /admin למשל בקובץ אחד וכל החלק של /user בקובץ אחר וכדו ואז בקובץ הראשי אתה מאגד את כל הראוטרים (וכפי הנראה יכול להגדיר את הנתיב עד הראוטר)
אפשר על ידי נתיבים בקובץ הראשי מה שיותר שייך באפליקציה קטנה
שאז אתה מגדיר את הנתיבים בmain או משהו דומה וזהו -
@עידו300 כפי שנראה הידע החסר שלי בnode לא מאפשר לי להבין אותך
אז אני ינסה להסביר שוב את מה שאני מכיר
כי לפי מה שאני יודע אין הרבה הבדל בלוגיקה בין פייתון לNODE בחלק הזהיש לך אפליקציה או שרות שאתה רוצה שיפעל כל הזמן
ויוכלו לגשת אליו דרך הרשת והוא יענה תשובות ויבצע פעולות?מעולה לדבר הזה קוראים אפליקציה \ תוכנה \ סרוויס \ כל שם שיש לו
לדבר כזה יכול להיות המון נתיבים והמון פרמטרים
אבל אין שום צורך שיהיה לו הרב פורטיםפשוט עליך להגדיר נתיבים שונים לכל קריאה
אפשר על ידי הגדרת קבצי ראוטר (ואז למשל אתה מנהל את כל החלק של /admin למשל בקובץ אחד וכל החלק של /user בקובץ אחר וכדו ואז בקובץ הראשי אתה מאגד את כל הראוטרים (וכפי הנראה יכול להגדיר את הנתיב עד הראוטר)
אפשר על ידי נתיבים בקובץ הראשי מה שיותר שייך באפליקציה קטנה
שאז אתה מגדיר את הנתיבים בmain או משהו דומה וזהו@A0533057932 מצוין, תודה.
מה הדרך הנכונה לעשות את זה? מבחינה טכנית, מה אני כותב. מה הדרך המקובלת, יש כרגע על השולחן 2 דרכים, מה הנכונה?