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

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

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

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

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

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

    yossizY תגובה 1 תגובה אחרונה
    0
    • yossizY מנותק
      yossizY מנותק
      yossiz
      השיב לayali ב נערך לאחרונה על ידי
      #9

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

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

      A תגובה 1 תגובה אחרונה
      6
      • A מנותק
        A מנותק
        ayali
        השיב לyossiz ב נערך לאחרונה על ידי
        #10

        @yossiz
        middleware.js

        api.js

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

        yossizY תגובה 1 תגובה אחרונה
        0
        • yossizY מנותק
          yossizY מנותק
          yossiz
          השיב לayali ב נערך לאחרונה על ידי
          #11

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

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

          A תגובה 1 תגובה אחרונה
          1
          • A מנותק
            A מנותק
            ayali
            השיב לyossiz ב נערך לאחרונה על ידי
            #12

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

            yossizY תגובה 1 תגובה אחרונה
            0
            • yossizY מנותק
              yossizY מנותק
              yossiz
              השיב לayali ב נערך לאחרונה על ידי
              #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
                • A מנותק
                  A מנותק
                  ayali
                  השיב לyossiz ב נערך לאחרונה על ידי
                  #15

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

                  תגובה 1 תגובה אחרונה
                  1
                  • A מנותק
                    A מנותק
                    ayali
                    השיב לyossiz ב נערך לאחרונה על ידי
                    #16

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

                    תגובה 1 תגובה אחרונה
                    3
                    • ב מנותק
                      ב מנותק
                      ב.ל
                      השיב לyossiz ב נערך לאחרונה על ידי
                      #17

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

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

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

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

                      yossizY תגובה 1 תגובה אחרונה
                      1
                      • yossizY מנותק
                        yossizY מנותק
                        yossiz
                        השיב לב.ל ב נערך לאחרונה על ידי yossiz
                        #18

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

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

                        ב תגובה 1 תגובה אחרונה
                        0
                        • ב מנותק
                          ב מנותק
                          ב.ל
                          השיב לyossiz ב נערך לאחרונה על ידי
                          #19

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

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

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

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

                          yossizY תגובה 1 תגובה אחרונה
                          1
                          • 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
                            • רפאלר מנותק
                              רפאלר מנותק
                              רפאל
                              השיב לyossiz ב נערך לאחרונה על ידי
                              #21
                              פוסט זה נמחק!
                              תגובה 1 תגובה אחרונה
                              0
                              • ב מנותק
                                ב מנותק
                                ב.ל
                                השיב לyossiz ב נערך לאחרונה על ידי
                                #22

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

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

                                yossizY תגובה 1 תגובה אחרונה
                                3
                                • yossizY מנותק
                                  yossizY מנותק
                                  yossiz
                                  השיב לב.ל ב נערך לאחרונה על ידי
                                  #23

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

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

                                  מוטי אורןמ תגובה 1 תגובה אחרונה
                                  2
                                  • מוטי אורןמ מנותק
                                    מוטי אורןמ מנותק
                                    מוטי אורן
                                    השיב ל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
                                    • yossizY מנותק
                                      yossizY מנותק
                                      yossiz
                                      השיב למוטי אורן ב נערך לאחרונה על ידי
                                      #25

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

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

                                      תגובה 1 תגובה אחרונה
                                      4
                                      • dovidD dovid העביר נושא זה מ-תכנות ב-

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

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

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