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

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

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

התחברות מJS ל API של PYTHON

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

    כתבתי צד שרת בפייתון
    זה רץ על הדפדפן .
    עכשיו אני מנסה לחבר לצד לקוח בסיסי HTML+JS
    ואני לא מצליחה לטעון נתונים , נתקע לי בפרומיס
    וכשאין לי שגיאה בפרומיס אז גם אין נתונים

    <script>
            url = 'http://127.0.0.1:5000';
            let requestRsponse = fetch( url, { mode: 'no-cors' })
    
            async function funcRequest(url){
            await fetch(url, { mode: 'no-cors' })
                .then((response) => {
                    console.log(response)
                return response.json(); // data into json
                })
                .then((data) => {
                // Here we can use the response Data
                })
                .catch(function(error) {
                console.log(error);
                });
            }
           funcRequest(url);
            
    //data=fetch('http://127.0.0.1:5000/persons', { mode: 'no-cors' })
            
    
            //let list = document.getElementById("clientList");
        // console.log(data)
         // data.forEach((item) => {
           // let li = document.createElement("li");
           // li.innerText = item;
         //   list.appendChild(li);
         // });
         
    
          
         
        </script>
    
    י תגובה 1 תגובה אחרונה
    0
    • ש שרה רחל

      כתבתי צד שרת בפייתון
      זה רץ על הדפדפן .
      עכשיו אני מנסה לחבר לצד לקוח בסיסי HTML+JS
      ואני לא מצליחה לטעון נתונים , נתקע לי בפרומיס
      וכשאין לי שגיאה בפרומיס אז גם אין נתונים

      <script>
              url = 'http://127.0.0.1:5000';
              let requestRsponse = fetch( url, { mode: 'no-cors' })
      
              async function funcRequest(url){
              await fetch(url, { mode: 'no-cors' })
                  .then((response) => {
                      console.log(response)
                  return response.json(); // data into json
                  })
                  .then((data) => {
                  // Here we can use the response Data
                  })
                  .catch(function(error) {
                  console.log(error);
                  });
              }
             funcRequest(url);
              
      //data=fetch('http://127.0.0.1:5000/persons', { mode: 'no-cors' })
              
      
              //let list = document.getElementById("clientList");
          // console.log(data)
           // data.forEach((item) => {
             // let li = document.createElement("li");
             // li.innerText = item;
           //   list.appendChild(li);
           // });
           
      
            
           
          </script>
      
      י מנותק
      י מנותק
      יוסף בן שמעון
      כתב ב נערך לאחרונה על ידי
      #2

      @שרה-רחל שורה 3 מיותרת, יש שם קריאה ריקה לשרת בלי לקרוא את התשובה.

      האם אין שום שגיאות בקונסול?

      ש תגובה 1 תגובה אחרונה
      1
      • י יוסף בן שמעון

        @שרה-רחל שורה 3 מיותרת, יש שם קריאה ריקה לשרת בלי לקרוא את התשובה.

        האם אין שום שגיאות בקונסול?

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

        @יוסף-בן-שמעון
        לא אין שגיאות

        י תגובה 1 תגובה אחרונה
        0
        • ש שרה רחל

          @יוסף-בן-שמעון
          לא אין שגיאות

          י מנותק
          י מנותק
          יוסף בן שמעון
          כתב ב נערך לאחרונה על ידי יוסף בן שמעון
          #4

          @שרה-רחל פתחו את כלי המפתחים, נווטו ללשונית Network, ותבדקו האם אתם רואים את הבקשה נשלחת לכתובת 127.0.0.1:5000, ואם כן, האם מתקבלת תשובה
          d35b34e7-0a12-4a9d-a1a9-db6ee38648e5-image.png

          ש תגובה 1 תגובה אחרונה
          2
          • י יוסף בן שמעון

            @שרה-רחל פתחו את כלי המפתחים, נווטו ללשונית Network, ותבדקו האם אתם רואים את הבקשה נשלחת לכתובת 127.0.0.1:5000, ואם כן, האם מתקבלת תשובה
            d35b34e7-0a12-4a9d-a1a9-db6ee38648e5-image.png

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

            @יוסף-בן-שמעון
            כן
            Screenshot 2022-10-20 211115.png

            י תגובה 1 תגובה אחרונה
            0
            • ש שרה רחל

              @יוסף-בן-שמעון
              כן
              Screenshot 2022-10-20 211115.png

              י מנותק
              י מנותק
              יוסף בן שמעון
              כתב ב נערך לאחרונה על ידי
              #6

              @שרה-רחל ובלשונית Response מתקבלת התגובה הרצויה?
              אז זה בעצם עובד מעולה, איפה הבעיה?

              ש תגובה 1 תגובה אחרונה
              1
              • י יוסף בן שמעון

                @שרה-רחל ובלשונית Response מתקבלת התגובה הרצויה?
                אז זה בעצם עובד מעולה, איפה הבעיה?

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

                @יוסף-בן-שמעון
                מקסים
                לא ידעתי ששם מסתכלים
                תודה רבה

                ש תגובה 1 תגובה אחרונה
                0
                • ש שרה רחל

                  @יוסף-בן-שמעון
                  מקסים
                  לא ידעתי ששם מסתכלים
                  תודה רבה

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

                  @יוסף-בן-שמעון אבל איל אני מגיעה לדטא ?
                  הרי הדפסתי לקונסול גם את RESPONE וגם את DATA
                  וכך זה מודפס :Screenshot 2022-10-20 223450.png

                  ש תגובה 1 תגובה אחרונה
                  0
                  • ש שרה רחל

                    @יוסף-בן-שמעון אבל איל אני מגיעה לדטא ?
                    הרי הדפסתי לקונסול גם את RESPONE וגם את DATA
                    וכך זה מודפס :Screenshot 2022-10-20 223450.png

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

                    @יוסף-בן-שמעון
                    ואני לא מצליחה להגיע לתוכן בשביל להדפיס אותו על המסך

                    <!DOCTYPE html>
                    <html>
                      <head> </head>
                      <body>
                        <center><h1>Clients:</h1></center>
                        <ul id="clientList"></ul>
                    
                        <script>
                            url = 'http://127.0.0.1:5000/persons';
                            persons =[]
                            async function funcRequest(url){
                            await fetch(url, { mode: 'no-cors' })
                                .then((response) => {
                                    persons.push(response)
                                    console.log(response)
                    
                                return response; // data into json
                                })
                                .then((data) => {
                                // Here we can use the response Data
                                console.log("data:",data)
                                })
                                .catch(function(error) {
                                console.log(error);
                                });
                            }
                           funcRequest(url);
                            
                                //fetch('http://127.0.0.1:5000/persons', { mode: 'no-cors' })
                            
                    
                            let list = document.getElementById("clientList");
                            console.log(persons)
                            persons.forEach((item) => {
                            let li = document.createElement("li");
                            li.innerText = item;
                            list.appendChild(li);
                           });
                         
                    
                          
                         
                        </script>
                      </body>
                    </html>
                    

                    וכך נראה הקונסול:Screenshot 2022-10-20 225126.png

                    י תגובה 1 תגובה אחרונה
                    0
                    • ש שרה רחל

                      @יוסף-בן-שמעון
                      ואני לא מצליחה להגיע לתוכן בשביל להדפיס אותו על המסך

                      <!DOCTYPE html>
                      <html>
                        <head> </head>
                        <body>
                          <center><h1>Clients:</h1></center>
                          <ul id="clientList"></ul>
                      
                          <script>
                              url = 'http://127.0.0.1:5000/persons';
                              persons =[]
                              async function funcRequest(url){
                              await fetch(url, { mode: 'no-cors' })
                                  .then((response) => {
                                      persons.push(response)
                                      console.log(response)
                      
                                  return response; // data into json
                                  })
                                  .then((data) => {
                                  // Here we can use the response Data
                                  console.log("data:",data)
                                  })
                                  .catch(function(error) {
                                  console.log(error);
                                  });
                              }
                             funcRequest(url);
                              
                                  //fetch('http://127.0.0.1:5000/persons', { mode: 'no-cors' })
                              
                      
                              let list = document.getElementById("clientList");
                              console.log(persons)
                              persons.forEach((item) => {
                              let li = document.createElement("li");
                              li.innerText = item;
                              list.appendChild(li);
                             });
                           
                      
                            
                           
                          </script>
                        </body>
                      </html>
                      

                      וכך נראה הקונסול:Screenshot 2022-10-20 225126.png

                      י מנותק
                      י מנותק
                      יוסף בן שמעון
                      כתב ב נערך לאחרונה על ידי
                      #10

                      @שרה-רחל בשורה 14 צריך לכתוב

                      return response.json()
                      

                      לא לעשות פוש,
                      בשורה 20 צריך לעשות את הפוש, ורק אז לעשות

                      console.log(persons)
                      

                      בתוך הפונקציה then ! לא מבחוץ

                      ש תגובה 1 תגובה אחרונה
                      0
                      • י יוסף בן שמעון

                        @שרה-רחל בשורה 14 צריך לכתוב

                        return response.json()
                        

                        לא לעשות פוש,
                        בשורה 20 צריך לעשות את הפוש, ורק אז לעשות

                        console.log(persons)
                        

                        בתוך הפונקציה then ! לא מבחוץ

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

                        @יוסף-בן-שמעון
                        מביא לי שגיאה:
                        Exception has occurred: SyntaxError: Unexpected end of input
                        Screenshot 2022-10-20 232801.png

                        י תגובה 1 תגובה אחרונה
                        0
                        • ש שרה רחל

                          @יוסף-בן-שמעון
                          מביא לי שגיאה:
                          Exception has occurred: SyntaxError: Unexpected end of input
                          Screenshot 2022-10-20 232801.png

                          י מנותק
                          י מנותק
                          יוסף בן שמעון
                          כתב ב נערך לאחרונה על ידי
                          #12

                          @שרה-רחל כנראה השרת לא שולח תגובה חוקית, אולי הגייסון לא תקני, או שחסרים הידרים Content-type: application/json.
                          לא יודע איך מוסיפים הידרים בפייתון

                          ש תגובה 1 תגובה אחרונה
                          0
                          • י יוסף בן שמעון

                            @שרה-רחל כנראה השרת לא שולח תגובה חוקית, אולי הגייסון לא תקני, או שחסרים הידרים Content-type: application/json.
                            לא יודע איך מוסיפים הידרים בפייתון

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

                            @יוסף-בן-שמעון
                            כונתכם שהגייסון המתקבל אינו חוקי?
                            אבל לפי הRESPONE כן מתקבל גייסון חוקי
                            ומהם הידרים?

                            י תגובה 1 תגובה אחרונה
                            0
                            • ש שרה רחל

                              @יוסף-בן-שמעון
                              כונתכם שהגייסון המתקבל אינו חוקי?
                              אבל לפי הRESPONE כן מתקבל גייסון חוקי
                              ומהם הידרים?

                              י מנותק
                              י מנותק
                              יוסף בן שמעון
                              כתב ב נערך לאחרונה על ידי
                              #14

                              @שרה-רחל תעלו דוגמת קוד קטנה איך השרת שולח את הגייסון

                              ש תגובה 1 תגובה אחרונה
                              0
                              • י יוסף בן שמעון

                                @שרה-רחל תעלו דוגמת קוד קטנה איך השרת שולח את הגייסון

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

                                @יוסף-בן-שמעון ```
                                @app.route('/persons', methods=['GET'])
                                def get():
                                list_p = []
                                p = person.find()
                                list(map(list_p.append, p))
                                json_p = dumps(list_p)
                                return json_p

                                י תגובה 1 תגובה אחרונה
                                0
                                • ש שרה רחל

                                  @יוסף-בן-שמעון ```
                                  @app.route('/persons', methods=['GET'])
                                  def get():
                                  list_p = []
                                  p = person.find()
                                  list(map(list_p.append, p))
                                  json_p = dumps(list_p)
                                  return json_p

                                  י מנותק
                                  י מנותק
                                  יוסף בן שמעון
                                  כתב ב נערך לאחרונה על ידי
                                  #16

                                  @שרה-רחל תבדקו אם זה פותר את הבעיה

                                  @app.route('/persons', methods=['GET'])
                                  def get():
                                      headers = {"Content-Type": "application/json"}
                                      list_p = []
                                      p = person.find()
                                      list(map(list_p.append, p))
                                      json_p = dumps(list_p)
                                      return json_p
                                  
                                  
                                  
                                  ש תגובה 1 תגובה אחרונה
                                  0
                                  • י יוסף בן שמעון

                                    @שרה-רחל תבדקו אם זה פותר את הבעיה

                                    @app.route('/persons', methods=['GET'])
                                    def get():
                                        headers = {"Content-Type": "application/json"}
                                        list_p = []
                                        p = person.find()
                                        list(map(list_p.append, p))
                                        json_p = dumps(list_p)
                                        return json_p
                                    
                                    
                                    
                                    ש מנותק
                                    ש מנותק
                                    שרה רחל
                                    כתב ב נערך לאחרונה על ידי
                                    #17

                                    @יוסף-בן-שמעון
                                    אותו הדבר

                                    קומפיונטק תגובה 1 תגובה אחרונה
                                    0
                                    • ש שרה רחל

                                      @יוסף-בן-שמעון
                                      אותו הדבר

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

                                      @שרה-רחל

                                      אולי ככה זה יעבוד:
                                      (jsonify במקום dumps)

                                      @app.route('/persons', methods=['GET'])
                                      def get():
                                          list_p = []
                                          p = person.find()
                                          list(map(list_p.append, p))
                                          json_p = jsonify(list_p)
                                          return json_p
                                      
                                      תגובה 1 תגובה אחרונה
                                      0
                                      • A מנותק
                                        A מנותק
                                        aaron
                                        כתב ב נערך לאחרונה על ידי
                                        #19

                                        @שרה-רחל יעזור לראות את כל הצד שרת כדי להבין טוב יותר.
                                        בהנחה ומדובר בflask, אז החזרה של dict/list אמור להחזיר תשובת JSON עם ההדר הנכון.
                                        https://flask.palletsprojects.com/en/2.2.x/quickstart/#apis-with-json

                                        aaron.tchumim@gmail.com
                                        Hetzner - שרתים וירטואליים ופיזיים במחירים מעולים (קישור שותפים)

                                        ווצאפ API - תיעוד שירות API לא רשמי.

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


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

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

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