Describe the bug
The staging version of Stremio, used for testing doesn't send HEAD requests to addons (and streams hosted on addons) while the production version of Stremio does. This caused issues for me specifically, as HEAD requests were being interpreted as GET requests. This caused for streams to be played twice, messing with internals, (as I redirect to video links through the Stremio addon).
HEAD -> addon -> read as GET request (technically) -> internal processes done as expected -> redirects to temp video (for showing downloading or error), or redirects to expected video. This is seen as success to Stremio as it will always have a video, and now sends a GET request for said content. Video does not play here as it is just a HEAD request.
Then runs the below.
GET -> addon -> internal processes done as expected -> redirects to temp video or redirects to expected video. Video plays.
To Reproduce
Steps to reproduce the behavior:
Find Stream
Play Stream
See only GET request on staging.
Expected behavior
Both HEAD and GET requests should be sent on Staging so it can be expected on Production. If I had known that production sends both (as I can only easily see staging requests, and should only be required to look at said staging requests to verify expected pattern). Staging should accurately follow how production works so instances like this don't happen.
Screenshots
Production
Staging
As you can see only Production sends HEAD requests properly.
Additional context
I ended up denying HEAD requests with a 405 so that this doesn't happen (I would have done this anyways). The issue here is that if I had known that this happens, I could have found this bug a long time ago. HEAD requests are expected, but if it doesn't happen on staging, why would it happen on production right?
Describe the bug The staging version of Stremio, used for testing doesn't send HEAD requests to addons (and streams hosted on addons) while the production version of Stremio does. This caused issues for me specifically, as HEAD requests were being interpreted as GET requests. This caused for streams to be played twice, messing with internals, (as I redirect to video links through the Stremio addon).
HEAD -> addon -> read as GET request (technically) -> internal processes done as expected -> redirects to temp video (for showing downloading or error), or redirects to expected video. This is seen as success to Stremio as it will always have a video, and now sends a GET request for said content. Video does not play here as it is just a HEAD request.
Then runs the below.
GET -> addon -> internal processes done as expected -> redirects to temp video or redirects to expected video. Video plays.
To Reproduce Steps to reproduce the behavior:
Expected behavior Both HEAD and GET requests should be sent on Staging so it can be expected on Production. If I had known that production sends both (as I can only easily see staging requests, and should only be required to look at said staging requests to verify expected pattern). Staging should accurately follow how production works so instances like this don't happen.
Screenshots
Production
Staging
As you can see only Production sends HEAD requests properly.
Additional context I ended up denying HEAD requests with a 405 so that this doesn't happen (I would have done this anyways). The issue here is that if I had known that this happens, I could have found this bug a long time ago. HEAD requests are expected, but if it doesn't happen on staging, why would it happen on production right?