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

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

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

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

מתוזמן נעוץ נעול הועבר תכנות
25 פוסטים 8 כותבים 696 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • 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
                                  • דף הבית
                                  • קטגוריות
                                  • פוסטים אחרונים
                                  • משתמשים
                                  • חיפוש
                                  • חוקי הפורום