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

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

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

טעינת סיסמאות ב-nodejs נכשלת

מתוזמן נעוץ נעול הועבר תכנות
18 פוסטים 4 כותבים 450 צפיות 4 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD מנותק
    dovidD מנותק
    dovid
    ניהול
    כתב ב נערך לאחרונה על ידי
    #5

    אתה מגלה טפח ומכסה עשרה, או מפחד קהל או מחרדת פרטיות.
    תביא קוד שנכשל כפי שהוא נראה (עם כל הסודות הכי אישיים שיש שמה),
    תספר על הקובץ בו נמצא הקוד, האם הוא הקובץ הראשי שרץ או שהוא תלות,
    ותסביר איפה קובץ ההגדרות נמצא ביחס לקובץ שרץ.

    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
    תגובה 1 תגובה אחרונה
    2
    • מ מנותק
      מ מנותק
      מיכי י-ם
      כתב ב נערך לאחרונה על ידי
      #6

      זה הקוד שטוען את הסיסמה

      class Client {
        wikiUrl;
        #cookie = "";
        userName = process.env.USER || "";
        #password = process.env.PASSWORD || "";
        isLogedIn = false;
        /**
         *
         * @param {String} wikiUrl
         */
        constructor(wikiUrl) {
          if (!wikiUrl) {
            throw new Error("you didn't pass the url of your wiki");
          }
          this.wikiUrl = wikiUrl;
        }
        async #postWiki(body) {
          return fetch(this.wikiUrl, {
            headers: {
              "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
              "user-agent": "node-fetch mw-api-node-client",
              cookie: this.#cookie,
            },
            method: "POST",
            credentials: "include",
            body: new URLSearchParams({ format: "json", utf8: 1, ...body }),
          });
        }
        async getWikiWithCookie(queryString) {
          if (!this.isLogedIn) {
            await this.login();
          }
          return fetch(`${this.wikiUrl}?${queryString}`, {
            headers: { cookie: this.#cookie },
          });
        }
        /**
         * method to login the user and get a cookie for forther operations
         * @param {String} [userName]
         * @param {String} [password]
         * @returns {Promise<Boolean>}
         */
        async login(userName, password) {
          if (userName) {
            this.userName = userName;
          }
          if (password) {
            this.#password = password;
          }
          if (!this.userName && !this.#password) {
            throw new Error("you dinwt pass your user name or your password");
          }
      

      אני טוען אותו דרך קובץ נוסף (ז"א שמתווך בין הקובץ שאני מריץ לקובץ הזה), כרגע אני מקבל את אובייקט השגיאה שהוגדר.
      כל הקבצים באותה תיקיה.
      זה בראש הקובץ הראשון (שטוען את הסיסמה):

      import dotenv from "dotenv";
      dotenv.config({path: 'C:/Tachnot/mw-bot-master copy/.env', debug: true});
      
      תגובה 1 תגובה אחרונה
      0
      • אלישיא מנותק
        אלישיא מנותק
        אלישי
        כתב ב נערך לאחרונה על ידי אלישי
        #7

        ראשית כל, תמיד כדאי לתת לקבצים ולתיקיות שמות ללא רווחים, ולכן תתחיל עם זה שאת הנתיב הזה: path: 'C:/Tachnot/mw-bot-master copy/.env' תעשה ללא רווחים כלל, תוסיף מקף במקום רווח ככה:

        path: 'C:/Tachnot/mw-bot-master-copy/.env'
        
        משתמש תמיםמ תגובה 1 תגובה אחרונה
        0
        • אלישיא אלישי

          ראשית כל, תמיד כדאי לתת לקבצים ולתיקיות שמות ללא רווחים, ולכן תתחיל עם זה שאת הנתיב הזה: path: 'C:/Tachnot/mw-bot-master copy/.env' תעשה ללא רווחים כלל, תוסיף מקף במקום רווח ככה:

          path: 'C:/Tachnot/mw-bot-master-copy/.env'
          
          משתמש תמיםמ מנותק
          משתמש תמיםמ מנותק
          משתמש תמים
          כתב ב נערך לאחרונה על ידי משתמש תמים
          #8

          להסביר את דברי @אלישי, צריך לשנות את שם התיקיה
          לא מספיק לשנות את הנתיב בקובץ

          אם זה לא מסתדר היה כדאי גם שתעלה את השגיאה כמו שהיא עם שם הקובץ בלי שינוי

          עזרתי לך? תראה לי את זה על ידי לחיצה על ה^ בצד שמאל למטה.

          תגובה 1 תגובה אחרונה
          1
          • מ מנותק
            מ מנותק
            מיכי י-ם
            כתב ב נערך לאחרונה על ידי
            #9

            image.png

            תגובה 1 תגובה אחרונה
            0
            • dovidD מנותק
              dovidD מנותק
              dovid
              ניהול
              כתב ב נערך לאחרונה על ידי dovid
              #10

              אתה בטוח שבקובץ C:/Tachnot/mw-bot-master copy/.env יש שורה עם PASSWORD=XXX?
              כמו"כ אם אתה יכול להביא את הקוד שטוען את הPASSWORD מתוך הenv, זה בעצם העיקר.

              @אלישי + @משתמש-תמים אני לא יודע למה החלטתם שהבעיה זה רווח, ממתי רווח מפריע בנתיב מוקף מרכאות?
              אצלי בכל אופן עובד:

              6144a166-ee76-4741-baee-9776eab429b6-image.png

              • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
              • בכל נושא אפשר ליצור קשר dovid@tchumim.com
              מ תגובה 1 תגובה אחרונה
              2
              • dovidD dovid

                אתה בטוח שבקובץ C:/Tachnot/mw-bot-master copy/.env יש שורה עם PASSWORD=XXX?
                כמו"כ אם אתה יכול להביא את הקוד שטוען את הPASSWORD מתוך הenv, זה בעצם העיקר.

                @אלישי + @משתמש-תמים אני לא יודע למה החלטתם שהבעיה זה רווח, ממתי רווח מפריע בנתיב מוקף מרכאות?
                אצלי בכל אופן עובד:

                6144a166-ee76-4741-baee-9776eab429b6-image.png

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

                @dovid ניסיתי לטעון את הקוד שלך, ואת זה קבלתי:d9d874e2-37a1-4198-803e-76cc6900183a-image.png

                סליחה זו הייתה טעות בקוד.
                כעת קבלתי: undefined

                תגובה 1 תגובה אחרונה
                0
                • dovidD מנותק
                  dovidD מנותק
                  dovid
                  ניהול
                  כתב ב נערך לאחרונה על ידי
                  #12

                  כנראה כי בקובץ C:/Tachnot/mw-bot-master copy/.env אין שורה כזו: PASSWORD=123.

                  • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                  • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                  תגובה 1 תגובה אחרונה
                  0
                  • מ מנותק
                    מ מנותק
                    מיכי י-ם
                    כתב ב נערך לאחרונה על ידי
                    #13

                    צריך להוסיף . לפני?

                    תגובה 1 תגובה אחרונה
                    0
                    • dovidD מנותק
                      dovidD מנותק
                      dovid
                      ניהול
                      כתב ב נערך לאחרונה על ידי
                      #14

                      לא, זה סוף המשפט שלי...

                      • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                      • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                      תגובה 1 תגובה אחרונה
                      0
                      • מ מנותק
                        מ מנותק
                        מיכי י-ם
                        כתב ב נערך לאחרונה על ידי מיכי י-ם
                        #15

                        image.png
                        (אולי אפשר להוסיף לי נקודות שאוכל להגיב יותר מהר😉 )

                        הקוד שטוען, זה הקוד הראשון שצרפתי.

                        תגובה 1 תגובה אחרונה
                        0
                        • dovidD מנותק
                          dovidD מנותק
                          dovid
                          ניהול
                          כתב ב נערך לאחרונה על ידי dovid
                          #16

                          אוקי, אז רק תוסיף שמה (בconstructor של הclient) עוד שורה:

                          console.log(process.env.PASSWORD);
                          

                          זה מדפיס את הערך הנכון?

                          • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                          • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                          מ תגובה 1 תגובה אחרונה
                          0
                          • dovidD dovid

                            אוקי, אז רק תוסיף שמה (בconstructor של הclient) עוד שורה:

                            console.log(process.env.PASSWORD);
                            

                            זה מדפיס את הערך הנכון?

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

                            @dovid לא, זה מחזיר undefined

                            תגובה 1 תגובה אחרונה
                            0
                            • מ מנותק
                              מ מנותק
                              מיכי י-ם
                              כתב ב נערך לאחרונה על ידי
                              #18

                              בסוף מחקתי את הקובץ, יצרתי מחדש, והבאג נעלם.

                              תגובה 1 תגובה אחרונה
                              0
                              תגובה
                              • תגובה כנושא
                              התחברו כדי לפרסם תגובה
                              • מהישן לחדש
                              • מהחדש לישן
                              • הכי הרבה הצבעות


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

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

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