Forum
    • Categories
    • Register
    • Login

    Setting server headers for downloads

    Scheduled Pinned Locked Moved Scripting
    23 Posts 3 Posters 3.5k Views
    Loading More Posts
    • 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.
    • ustkU
      ustk @David Healey
      last edited by

      @d-healey So the pendingDownload doesn't take a extraHeader parameter like the pendingCallbackdoes...
      I don't see how to add this though, because their structures are different... @Christoph-Hart's the guy we need :)

      Hise made me an F5 dude, browser just suffers...

      David HealeyD 1 Reply Last reply Reply Quote 1
      • David HealeyD
        David Healey @ustk
        last edited by

        @ustk Yeah I had a look myself and came to the same conclusion :)

        Free HISE Bootcamp Full Course for beginners.
        YouTube Channel - Public HISE tutorials
        My Patreon - HISE tutorials

        ustkU 1 Reply Last reply Reply Quote 0
        • ustkU
          ustk @David Healey
          last edited by

          @d-healey In fact it seems doable, but then I can't test it as my woo-commerce isn't ready...

          Try to add

          String extraHeader;
          

          inside the ScriptDownloadObject struct (between line 384-389 in ScriptingApiObjects.h)

          and

          newDownload->extraHeader = extraHeader;
          

          at line 54 of GlobalServer.cpp

          And cross your fingers 🤣

          Hise made me an F5 dude, browser just suffers...

          David HealeyD 1 Reply Last reply Reply Quote 0
          • David HealeyD
            David Healey @ustk
            last edited by

            Thanks, I'll try it now!

            @ustk said in Setting server headers for downloads:

            I can't test it as my woo-commerce isn't ready...

            You should setup a local server for testing using something like XAMPP if you're going to be working with the Server API a lot.

            Free HISE Bootcamp Full Course for beginners.
            YouTube Channel - Public HISE tutorials
            My Patreon - HISE tutorials

            ustkU 1 Reply Last reply Reply Quote 1
            • ustkU
              ustk @David Healey
              last edited by

              @d-healey Yeah thanks, I don't know anything about servers and web stuff, but I take your words for it :)

              Hise made me an F5 dude, browser just suffers...

              1 Reply Last reply Reply Quote 1
              • David HealeyD
                David Healey
                last edited by

                Didn't work unfortunately.

                Free HISE Bootcamp Full Course for beginners.
                YouTube Channel - Public HISE tutorials
                My Patreon - HISE tutorials

                ustkU 2 Replies Last reply Reply Quote 0
                • ustkU
                  ustk @David Healey
                  last edited by

                  @d-healey Oh I think that's because the extraHeader has to be linked to the pendingCallback one, or we need to create a new one somehow. I think we're close ;)

                  Hise made me an F5 dude, browser just suffers...

                  1 Reply Last reply Reply Quote 0
                  • ustkU
                    ustk @David Healey
                    last edited by

                    @d-healey So I think you we need to create a new method for setting the header specific to downloadObject, so try adding a method like this to the ScriptingApiObjects.h

                    void setDownloadHttpHeader(String newHeader)
                    {
                        extraHeader = newHeader;
                    }
                    

                    Hise made me an F5 dude, browser just suffers...

                    David HealeyD 1 Reply Last reply Reply Quote 0
                    • David HealeyD
                      David Healey @ustk
                      last edited by

                      @ustk The download object doesn't exist until after the call to Server.downloadFile. So by then it will be too late to set the header.

                      Free HISE Bootcamp Full Course for beginners.
                      YouTube Channel - Public HISE tutorials
                      My Patreon - HISE tutorials

                      ustkU 2 Replies Last reply Reply Quote 1
                      • ustkU
                        ustk @David Healey
                        last edited by

                        @d-healey I don't understand why two extraHeader are declared, one in the pendingCallback and one below in private. I imagine the one that is used is the private one. So we shouldn't declared it in the ScriptingApiObject.
                        This means that just passing it insed the addDownload (newDownload->extraHeader = extraHeader;) should be enough, just before adding a pending download as it is done for the pendingCallback.

                        Hise made me an F5 dude, browser just suffers...

                        1 Reply Last reply Reply Quote 0
                        • ustkU
                          ustk @David Healey
                          last edited by

                          @d-healey I think it should be passed to these inputStream calls instead of String():

                          in start

                          auto wis = downloadURL.createInputStream(false, nullptr, nullptr, String(), HISE_SCRIPT_SERVER_TIMEOUT, nullptr, &status);
                          

                          and in resume

                          auto wis = downloadURL.createInputStream(false, nullptr, nullptr, String(), 0, nullptr, &status);
                          

                          Hise made me an F5 dude, browser just suffers...

                          David HealeyD 1 Reply Last reply Reply Quote 1
                          • David HealeyD
                            David Healey @ustk
                            last edited by

                            @ustk Replacing String() with the token didn't work :(

                            Free HISE Bootcamp Full Course for beginners.
                            YouTube Channel - Public HISE tutorials
                            My Patreon - HISE tutorials

                            ustkU 1 Reply Last reply Reply Quote 0
                            • ustkU
                              ustk @David Healey
                              last edited by

                              @d-healey I'm definitely out of ideas now 🙄

                              Hise made me an F5 dude, browser just suffers...

                              David HealeyD 1 Reply Last reply Reply Quote 1
                              • David HealeyD
                                David Healey @ustk
                                last edited by

                                @ustk I have one idea - nag Christoph :p

                                Free HISE Bootcamp Full Course for beginners.
                                YouTube Channel - Public HISE tutorials
                                My Patreon - HISE tutorials

                                David HealeyD 1 Reply Last reply Reply Quote 0
                                • David HealeyD
                                  David Healey @David Healey
                                  last edited by

                                  @Christoph-Hart Got any pointers about this issue?

                                  Free HISE Bootcamp Full Course for beginners.
                                  YouTube Channel - Public HISE tutorials
                                  My Patreon - HISE tutorials

                                  T 1 Reply Last reply Reply Quote 0
                                  • T
                                    tomekslesicki @David Healey
                                    last edited by tomekslesicki

                                    @d-healey @Christoph-Hart I'm running into a similar problem where I need to include some headers in the download call. Have you found a solution to this issue?

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    10

                                    Online

                                    2.1k

                                    Users

                                    13.2k

                                    Topics

                                    114.3k

                                    Posts