Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. How can I get things from website
Qt 6.11 is out! See what's new in the release blog

How can I get things from website

Scheduled Pinned Locked Moved Solved General and Desktop
73 Posts 5 Posters 49.9k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • jsulmJ jsulm

    @victor-wang Your do..while loop is an infinite loop if you get a response != 200
    It does not make sense as a reply is either 200 or not: it will not become 200 if it wasn't before by some magic, so remove that loop.
    As I said 500 means internal server error. You get a connection but the server fails to do what it is expected to do and sends 500 back.
    If you want to slow down your requests you can use QTimer.

    V Offline
    V Offline
    victor wang
    wrote on last edited by
    #62

    @jsulm

    If i change my code like this.

    It will failed for a few times.

    I'm trying to solve this kind of problem

    jsulmJ 2 Replies Last reply
    0
    • V victor wang

      @jsulm

      If i change my code like this.

      It will failed for a few times.

      I'm trying to solve this kind of problem

      jsulmJ Offline
      jsulmJ Offline
      jsulm
      Lifetime Qt Champion
      wrote on last edited by
      #63

      @victor-wang What does fail mean? Do you get 500?

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • V victor wang

        @jsulm

        If i change my code like this.

        It will failed for a few times.

        I'm trying to solve this kind of problem

        jsulmJ Offline
        jsulmJ Offline
        jsulm
        Lifetime Qt Champion
        wrote on last edited by
        #64

        @victor-wang If you do not want to send all request in parallel you can do it one after another.

        https://forum.qt.io/topic/113070/qt-code-of-conduct

        V 1 Reply Last reply
        0
        • jsulmJ jsulm

          @victor-wang If you do not want to send all request in parallel you can do it one after another.

          V Offline
          V Offline
          victor wang
          wrote on last edited by victor wang
          #65

          @jsulm
          Yes, it will show 500.

          how to do that?
          Could you teach me?

          Or can i do 5 times and another 5 times.

          jsulmJ 1 Reply Last reply
          0
          • V victor wang

            @jsulm
            Yes, it will show 500.

            how to do that?
            Could you teach me?

            Or can i do 5 times and another 5 times.

            jsulmJ Offline
            jsulmJ Offline
            jsulm
            Lifetime Qt Champion
            wrote on last edited by
            #66

            @victor-wang Put all URLs you want to get in a list.
            Write a method which takes next URL from that list and sends a request.
            Call this method in your button slot.
            In the finished() slot you call this method again after handling current response if the list is not empty.

            https://forum.qt.io/topic/113070/qt-code-of-conduct

            V 1 Reply Last reply
            2
            • jsulmJ jsulm

              @victor-wang Put all URLs you want to get in a list.
              Write a method which takes next URL from that list and sends a request.
              Call this method in your button slot.
              In the finished() slot you call this method again after handling current response if the list is not empty.

              V Offline
              V Offline
              victor wang
              wrote on last edited by
              #67

              @jsulm
              Sorry it is too abstract for me,
              Did you have an example?

              jsulmJ 1 Reply Last reply
              0
              • V victor wang

                @jsulm
                Sorry it is too abstract for me,
                Did you have an example?

                jsulmJ Offline
                jsulmJ Offline
                jsulm
                Lifetime Qt Champion
                wrote on last edited by
                #68

                @victor-wang No, I don't have an example.
                What is abstract here? I gave you a quite complete description.
                What exactly is not clear?

                https://forum.qt.io/topic/113070/qt-code-of-conduct

                V 1 Reply Last reply
                0
                • jsulmJ jsulm

                  @victor-wang No, I don't have an example.
                  What is abstract here? I gave you a quite complete description.
                  What exactly is not clear?

                  V Offline
                  V Offline
                  victor wang
                  wrote on last edited by victor wang
                  #69

                  @jsulm
                  I don't know how to do it in the list and give a request.
                  I assume that i had a method function called getUrl();
                  And i will called it in the button.
                  When the replyFinished() slot is called from button.
                  Then i will call getUrl() again in the replyFinished() slot.

                  I this what you mean?

                  jsulmJ 1 Reply Last reply
                  0
                  • V victor wang

                    @jsulm
                    I don't know how to do it in the list and give a request.
                    I assume that i had a method function called getUrl();
                    And i will called it in the button.
                    When the replyFinished() slot is called from button.
                    Then i will call getUrl() again in the replyFinished() slot.

                    I this what you mean?

                    jsulmJ Offline
                    jsulmJ Offline
                    jsulm
                    Lifetime Qt Champion
                    wrote on last edited by
                    #70

                    @victor-wang

                    //In your class:
                    QList<QString> list;
                    
                    // In your button slot
                    list << "URL1" << "URL2"<<...;
                    sendNextRequest();
                    
                    void sendNextRequest()
                    {
                        QString url = list.first();
                        list.removeFirst();
                        // Send request
                    }
                    
                    // In your finished() slot
                    // Handle current request
                    ...
                    if (list.size() > 0)
                        sendNextRequest();
                    

                    https://forum.qt.io/topic/113070/qt-code-of-conduct

                    V 1 Reply Last reply
                    1
                    • jsulmJ jsulm

                      @victor-wang

                      //In your class:
                      QList<QString> list;
                      
                      // In your button slot
                      list << "URL1" << "URL2"<<...;
                      sendNextRequest();
                      
                      void sendNextRequest()
                      {
                          QString url = list.first();
                          list.removeFirst();
                          // Send request
                      }
                      
                      // In your finished() slot
                      // Handle current request
                      ...
                      if (list.size() > 0)
                          sendNextRequest();
                      
                      V Offline
                      V Offline
                      victor wang
                      wrote on last edited by
                      #71

                      @jsulm

                      Is the void sendNextRequest() able to put in the button slot?

                      When do i call my

                      manager->get(QNetworkRequest(QUrl(url)));
                      

                      Is the finished() slot same as my replyFinished() slot?

                      jsulmJ 1 Reply Last reply
                      0
                      • V victor wang

                        @jsulm

                        Is the void sendNextRequest() able to put in the button slot?

                        When do i call my

                        manager->get(QNetworkRequest(QUrl(url)));
                        

                        Is the finished() slot same as my replyFinished() slot?

                        jsulmJ Offline
                        jsulmJ Offline
                        jsulm
                        Lifetime Qt Champion
                        wrote on last edited by
                        #72

                        @victor-wang Yes, you call void sendNextRequest() in the button slot as any other method.
                        You call

                        manager->get(QNetworkRequest(QUrl(url)));
                        

                        in void sendNextRequest() as I already said.
                        finished() signal is same except for these two lines (as I already said):

                        if (list.size() > 0)
                            sendNextRequest();
                        

                        https://forum.qt.io/topic/113070/qt-code-of-conduct

                        V 1 Reply Last reply
                        1
                        • jsulmJ jsulm

                          @victor-wang Yes, you call void sendNextRequest() in the button slot as any other method.
                          You call

                          manager->get(QNetworkRequest(QUrl(url)));
                          

                          in void sendNextRequest() as I already said.
                          finished() signal is same except for these two lines (as I already said):

                          if (list.size() > 0)
                              sendNextRequest();
                          
                          V Offline
                          V Offline
                          victor wang
                          wrote on last edited by
                          #73

                          @jsulm

                          Thank you i had solve the problem
                          Thank you so much!!!!

                          1 Reply Last reply
                          0

                          • Login

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved