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

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

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

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

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

    אני מנסה להריץ סקריפט שדורש ביצוע login לאתר והסיסמאות לא נטענות.

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

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

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

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

        @dovid אני משתמש ב-dotenv
        אשמח להכוונה איך אפשר למצוא את הפרטים הרלוונטיים

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

          בהתחלה הוספתי ל()dotenv.config מצב דיבוג, ולפי הבנתי השגיאה הייתה שהריצה בוצעה בתיקיית האב, הוספתי נתיב לקובץ מתיקיית האב וקבלתי Failed to load ./שם התיקיה/.env ENOENT: no such file or directory, open . בהרצה האחרונה קבלתי רק את השגיאה שהוגדרה בקוד.
          מקווה שהתקדמתי במשהו..

          תגובה 1 תגובה אחרונה
          0
          • 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
                • משתמש תמיםמ מנותק
                  משתמש תמיםמ מנותק
                  משתמש תמים
                  השיב לאלישי ב נערך לאחרונה על ידי משתמש תמים
                  #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
                      • מ מנותק
                        מ מנותק
                        מיכי י-ם
                        השיב לdovid ב נערך לאחרונה על ידי מיכי י-ם
                        #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
                                  • מ מנותק
                                    מ מנותק
                                    מיכי י-ם
                                    השיב לdovid ב נערך לאחרונה על ידי
                                    #17

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

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

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

                                      תגובה 1 תגובה אחרונה
                                      0

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

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

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