דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. עזרה בהעלאת קבצים לשרת ב node js

עזרה בהעלאת קבצים לשרת ב node js

מתוזמן נעוץ נעול הועבר תכנות
25 פוסטים 8 כותבים 696 צפיות 7 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • yossizY yossiz

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

    A מנותק
    A מנותק
    ayali
    כתב ב נערך לאחרונה על ידי
    #8

    @yossiz נעזרתי בו אבל עשיתי לפי הדרכה אחרת

    yossizY תגובה 1 תגובה אחרונה
    0
    • A ayali

      @yossiz נעזרתי בו אבל עשיתי לפי הדרכה אחרת

      yossizY מנותק
      yossizY מנותק
      yossiz
      כתב ב נערך לאחרונה על ידי
      #9

      @ayali אי אפשר ככה. תעזרו לי לעזור לכם.
      אני חייב לראות קוד כלשהו כדי להתחיל לעזור.

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      A תגובה 1 תגובה אחרונה
      6
      • yossizY yossiz

        @ayali אי אפשר ככה. תעזרו לי לעזור לכם.
        אני חייב לראות קוד כלשהו כדי להתחיל לעזור.

        A מנותק
        A מנותק
        ayali
        כתב ב נערך לאחרונה על ידי
        #10

        @yossiz
        middleware.js

        api.js

        תודה רבה על הרצון והנכונות!

        yossizY תגובה 1 תגובה אחרונה
        0
        • A ayali

          @yossiz
          middleware.js

          api.js

          תודה רבה על הרצון והנכונות!

          yossizY מנותק
          yossizY מנותק
          yossiz
          כתב ב נערך לאחרונה על ידי
          #11

          @ayali האם המשתנה __basedir מוגדרת איפשהו?

          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

          A תגובה 1 תגובה אחרונה
          1
          • yossizY yossiz

            @ayali האם המשתנה __basedir מוגדרת איפשהו?

            A מנותק
            A מנותק
            ayali
            כתב ב נערך לאחרונה על ידי
            #12

            @yossiz כן הוא שווה ל__dirname
            יש לי בעיה בקבלת הקובץ
            אני מביאה אותו דרך formData אבל שאני מדפיסה את ה body הוא
            אוביקט ריק

            yossizY תגובה 1 תגובה אחרונה
            0
            • A ayali

              @yossiz כן הוא שווה ל__dirname
              יש לי בעיה בקבלת הקובץ
              אני מביאה אותו דרך formData אבל שאני מדפיסה את ה body הוא
              אוביקט ריק

              yossizY מנותק
              yossizY מנותק
              yossiz
              כתב ב נערך לאחרונה על ידי
              #13

              @ayali לקחתי את הקבצים שהבאת ועשיתי פרוייקט דוגמה שמבוסס עליהם.
              הנה הפרוייקט:
              upload-file-sample.zip

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

              אם יש שאלות, בבקשה!

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

              תגובה 1 תגובה אחרונה
              4
              • yossizY מנותק
                yossizY מנותק
                yossiz
                כתב ב נערך לאחרונה על ידי yossiz
                #14

                כמה נקודות שצריך לשים לב להם:
                א) multer הוא middleware. ולכן זה לא פוקציה שאתה קורא בעצמך. אלא זה שלב עיבוד שאתה מכניס לשרשרת המטפלים/מעבדים בבקשה. אקספרס כבר ידאוג לקרוא לו בשלב המתאים. לכן הורדתי את הקריאה הידנית לפונקציה ובמקום זה הוספתי אותו בקובץ routes.js.
                ב) באקספרס זה עובד ככה, שה-body בברירת מחדל נשאר ריק (או בעצם לא קיימת - undefined), וזה התפקיד של ה-middlewares לעבד את המידע ה"לא מבושלת" שה-body מכיל, ולהכניס את התוצאה ה"מבושלת" ל-req.body.
                ה-middleware של multer לוקח את הקובץ ומכניס אותו ל-req.file - לא ל-req.body. רק אם יש שדות נוספות ב-body הם יוכנסו ל-req.body. אחרת ה-body נשאר ריק.
                ג) כמו שאמרתי מקודם, שיניתי את המינימום כדי שהפרוייקט יעבוד. אני לא בטוח שעכשיו הכל מסודר בצורה מיטבית. אבל "תן ולחכם ויחכם עוד".

                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                A ב 3 תגובות תגובה אחרונה
                7
                • yossizY yossiz

                  כמה נקודות שצריך לשים לב להם:
                  א) multer הוא middleware. ולכן זה לא פוקציה שאתה קורא בעצמך. אלא זה שלב עיבוד שאתה מכניס לשרשרת המטפלים/מעבדים בבקשה. אקספרס כבר ידאוג לקרוא לו בשלב המתאים. לכן הורדתי את הקריאה הידנית לפונקציה ובמקום זה הוספתי אותו בקובץ routes.js.
                  ב) באקספרס זה עובד ככה, שה-body בברירת מחדל נשאר ריק (או בעצם לא קיימת - undefined), וזה התפקיד של ה-middlewares לעבד את המידע ה"לא מבושלת" שה-body מכיל, ולהכניס את התוצאה ה"מבושלת" ל-req.body.
                  ה-middleware של multer לוקח את הקובץ ומכניס אותו ל-req.file - לא ל-req.body. רק אם יש שדות נוספות ב-body הם יוכנסו ל-req.body. אחרת ה-body נשאר ריק.
                  ג) כמו שאמרתי מקודם, שיניתי את המינימום כדי שהפרוייקט יעבוד. אני לא בטוח שעכשיו הכל מסודר בצורה מיטבית. אבל "תן ולחכם ויחכם עוד".

                  A מנותק
                  A מנותק
                  ayali
                  כתב ב נערך לאחרונה על ידי
                  #15

                  @yossiz תודה רבה רבה
                  עכשיו אני יתחיל לעבוד מקוה שהכל יסתדר לי

                  תגובה 1 תגובה אחרונה
                  1
                  • yossizY yossiz

                    כמה נקודות שצריך לשים לב להם:
                    א) multer הוא middleware. ולכן זה לא פוקציה שאתה קורא בעצמך. אלא זה שלב עיבוד שאתה מכניס לשרשרת המטפלים/מעבדים בבקשה. אקספרס כבר ידאוג לקרוא לו בשלב המתאים. לכן הורדתי את הקריאה הידנית לפונקציה ובמקום זה הוספתי אותו בקובץ routes.js.
                    ב) באקספרס זה עובד ככה, שה-body בברירת מחדל נשאר ריק (או בעצם לא קיימת - undefined), וזה התפקיד של ה-middlewares לעבד את המידע ה"לא מבושלת" שה-body מכיל, ולהכניס את התוצאה ה"מבושלת" ל-req.body.
                    ה-middleware של multer לוקח את הקובץ ומכניס אותו ל-req.file - לא ל-req.body. רק אם יש שדות נוספות ב-body הם יוכנסו ל-req.body. אחרת ה-body נשאר ריק.
                    ג) כמו שאמרתי מקודם, שיניתי את המינימום כדי שהפרוייקט יעבוד. אני לא בטוח שעכשיו הכל מסודר בצורה מיטבית. אבל "תן ולחכם ויחכם עוד".

                    A מנותק
                    A מנותק
                    ayali
                    כתב ב נערך לאחרונה על ידי
                    #16

                    @yossiz זה עובד לי אני לא מאמינה כמעט התייאשתי....
                    שוב תודה רבה!

                    תגובה 1 תגובה אחרונה
                    3
                    • yossizY yossiz

                      כמה נקודות שצריך לשים לב להם:
                      א) multer הוא middleware. ולכן זה לא פוקציה שאתה קורא בעצמך. אלא זה שלב עיבוד שאתה מכניס לשרשרת המטפלים/מעבדים בבקשה. אקספרס כבר ידאוג לקרוא לו בשלב המתאים. לכן הורדתי את הקריאה הידנית לפונקציה ובמקום זה הוספתי אותו בקובץ routes.js.
                      ב) באקספרס זה עובד ככה, שה-body בברירת מחדל נשאר ריק (או בעצם לא קיימת - undefined), וזה התפקיד של ה-middlewares לעבד את המידע ה"לא מבושלת" שה-body מכיל, ולהכניס את התוצאה ה"מבושלת" ל-req.body.
                      ה-middleware של multer לוקח את הקובץ ומכניס אותו ל-req.file - לא ל-req.body. רק אם יש שדות נוספות ב-body הם יוכנסו ל-req.body. אחרת ה-body נשאר ריק.
                      ג) כמו שאמרתי מקודם, שיניתי את המינימום כדי שהפרוייקט יעבוד. אני לא בטוח שעכשיו הכל מסודר בצורה מיטבית. אבל "תן ולחכם ויחכם עוד".

                      ב מנותק
                      ב מנותק
                      ב.ל
                      כתב ב נערך לאחרונה על ידי
                      #17

                      @yossiz אמר בעזרה בהעלאת קבצים לשרת ב node js:

                      באקספרס זה עובד ככה, שה-body בברירת מחדל נשאר ריק (או בעצם לא קיימת - undefined)

                      רק אם זה נשלח כ form-data.

                      ליצירת קשר - baruchlamdan@gmail.com

                      yossizY תגובה 1 תגובה אחרונה
                      1
                      • ב ב.ל

                        @yossiz אמר בעזרה בהעלאת קבצים לשרת ב node js:

                        באקספרס זה עובד ככה, שה-body בברירת מחדל נשאר ריק (או בעצם לא קיימת - undefined)

                        רק אם זה נשלח כ form-data.

                        yossizY מנותק
                        yossizY מנותק
                        yossiz
                        כתב ב נערך לאחרונה על ידי yossiz
                        #18

                        @ב-ל אתה שואל או קובע?
                        (נראה לי שאקפרס לא מפרסר שום body ישר מהקופסה. צריך להוסיף middleware של bodyparser)

                        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                        ב תגובה 1 תגובה אחרונה
                        0
                        • yossizY yossiz

                          @ב-ל אתה שואל או קובע?
                          (נראה לי שאקפרס לא מפרסר שום body ישר מהקופסה. צריך להוסיף middleware של bodyparser)

                          ב מנותק
                          ב מנותק
                          ב.ל
                          כתב ב נערך לאחרונה על ידי
                          #19

                          @yossiz אמר בעזרה בהעלאת קבצים לשרת ב node js:

                          (נראה לי שאקפרס לא מפרסר שום body ישר מהקופסה. צריך להוסיף middleware של bodyparser)

                          כיום זה מובנה באקספרס

                          ליצירת קשר - baruchlamdan@gmail.com

                          yossizY תגובה 1 תגובה אחרונה
                          1
                          • ב ב.ל

                            @yossiz אמר בעזרה בהעלאת קבצים לשרת ב node js:

                            (נראה לי שאקפרס לא מפרסר שום body ישר מהקופסה. צריך להוסיף middleware של bodyparser)

                            כיום זה מובנה באקספרס

                            yossizY מנותק
                            yossizY מנותק
                            yossiz
                            כתב ב נערך לאחרונה על ידי yossiz
                            #20

                            @ב-ל
                            התיעוד אומר אחרת

                            Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is populated when you use body-parsing middleware such as express.json() or express.urlencoded().

                            📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                            רפאלר ב 2 תגובות תגובה אחרונה
                            2
                            • yossizY yossiz

                              @ב-ל
                              התיעוד אומר אחרת

                              Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is populated when you use body-parsing middleware such as express.json() or express.urlencoded().

                              רפאלר מנותק
                              רפאלר מנותק
                              רפאל
                              כתב ב נערך לאחרונה על ידי
                              #21
                              פוסט זה נמחק!
                              תגובה 1 תגובה אחרונה
                              0
                              • yossizY yossiz

                                @ב-ל
                                התיעוד אומר אחרת

                                Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is populated when you use body-parsing middleware such as express.json() or express.urlencoded().

                                ב מנותק
                                ב מנותק
                                ב.ל
                                כתב ב נערך לאחרונה על ידי
                                #22

                                @yossiz
                                https://stackoverflow.com/questions/66525078/bodyparser-is-deprecated

                                ליצירת קשר - baruchlamdan@gmail.com

                                yossizY תגובה 1 תגובה אחרונה
                                3
                                • ב ב.ל

                                  @yossiz
                                  https://stackoverflow.com/questions/66525078/bodyparser-is-deprecated

                                  yossizY מנותק
                                  yossizY מנותק
                                  yossiz
                                  כתב ב נערך לאחרונה על ידי
                                  #23

                                  @ב-ל תודה. מעניין א) למה אני לא מקבל אזהרה זו, ב) למה זה לא משתקף בתיעוד שלהם?

                                  📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                  מוטי אורןמ תגובה 1 תגובה אחרונה
                                  2
                                  • yossizY yossiz

                                    @ב-ל תודה. מעניין א) למה אני לא מקבל אזהרה זו, ב) למה זה לא משתקף בתיעוד שלהם?

                                    מוטי אורןמ מנותק
                                    מוטי אורןמ מנותק
                                    מוטי אורן
                                    כתב ב נערך לאחרונה על ידי מוטי אורן
                                    #24

                                    @yossiz זה בדיוק מה שכתוב בתיעוד שלהם.
                                    בשביל להבהיר את מה ש @ב-ל כתב, אקספרס עדיין לא מפרסר מהקופסה שום דבר. הדבר היחיד שהשתנה הוא שהמידלוורס של bodyparser מובנים באקספרס, ואין עניין להתקין שום מודול חיצוני בשביל זה. אני מצטט מהתיעוד:

                                    req.body

                                    Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is populated when you use body-parsing middleware such as express.json() or express.urlencoded().

                                    המידלוורס החדשים שנוספו באקספרס 4 הם:

                                    app.use(express.json()); // מפרסר application/json
                                    app.use(express.urlencoded()); // מפרסר application/x-www-form-urlencoded
                                    
                                    yossizY תגובה 1 תגובה אחרונה
                                    5
                                    • מוטי אורןמ מוטי אורן

                                      @yossiz זה בדיוק מה שכתוב בתיעוד שלהם.
                                      בשביל להבהיר את מה ש @ב-ל כתב, אקספרס עדיין לא מפרסר מהקופסה שום דבר. הדבר היחיד שהשתנה הוא שהמידלוורס של bodyparser מובנים באקספרס, ואין עניין להתקין שום מודול חיצוני בשביל זה. אני מצטט מהתיעוד:

                                      req.body

                                      Contains key-value pairs of data submitted in the request body. By default, it is undefined, and is populated when you use body-parsing middleware such as express.json() or express.urlencoded().

                                      המידלוורס החדשים שנוספו באקספרס 4 הם:

                                      app.use(express.json()); // מפרסר application/json
                                      app.use(express.urlencoded()); // מפרסר application/x-www-form-urlencoded
                                      
                                      yossizY מנותק
                                      yossizY מנותק
                                      yossiz
                                      כתב ב נערך לאחרונה על ידי
                                      #25

                                      @מוטי-אורן תודה רבה 🙂
                                      לא שמתי לב למה שאני בעצמי ציטטתי 🙂

                                      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                      תגובה 1 תגובה אחרונה
                                      4
                                      • dovidD dovid העביר נושא זה מ-תכנות ב-
                                      תגובה
                                      • תגובה כנושא
                                      התחברו כדי לפרסם תגובה
                                      • מהישן לחדש
                                      • מהחדש לישן
                                      • הכי הרבה הצבעות


                                      • 1
                                      • 2
                                      בא תתחבר לדף היומי!
                                      • התחברות

                                      • אין לך חשבון עדיין? הרשמה

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