-
Notifications
You must be signed in to change notification settings - Fork 8.1k
Closed
Labels
Resolution-FixedThe issue is fixed.The issue is fixed.WG-Cmdlets-Utilitycmdlets in the Microsoft.PowerShell.Utility modulecmdlets in the Microsoft.PowerShell.Utility module
Description
Prerequisites
- Write a descriptive title.
- Make sure you are able to repro it on the latest released version
- Search the existing issues.
- Refer to the FAQ.
- Refer to Differences between Windows PowerShell 5.1 and PowerShell.
Steps to reproduce
I think the behaviour when we handle the redirects* and use -MaximumRedirection and -WebSession is incorrect.
Each time we handle a redirection the WebSession.MaximumRedirection parameter is reduced by one.
In the example below it goes from 3 to 0.
When we use the web session I would expect the -MaximumRedirection to be 3 in each follow up request, instead WebSession.MaximumRedirection is 0 and stays 0
Test:
Invoke-WebRequest "http://mockbin.org/redirect/300?to=https://mockbin.org/redirect/301?to=http://mockbin.org/redirect/302?to=https://mockbin.org/redirect/303?to=http://mockbin.org/redirect/308?to=https://mockbin.org/status/200" -MaximumRedirection 3 -SessionVariable session -AllowInsecureRedirect
[int]($error[0].Exception.statuscode) #--> 303
$session.MaximumRedirection #--> 0 (i think it should be 3)
Invoke-WebRequest "http://mockbin.org/redirect/300?to=https://mockbin.org/redirect/301?to=http://mockbin.org/redirect/302?to=https://mockbin.org/redirect/303?to=http://mockbin.org/redirect/308?to=https://mockbin.org/status/200" -WebSession $session -AllowInsecureRedirect
# I expect -MaximumRedirection == 3
[int]($error[0].Exception.statuscode) #--> 300
$session.MaximumRedirection #--> 0If this issue is confirmed, I will fix it in my next PR
- We currently handle the redirects in 3 cases -AllowInsecureRedirect (https to http redirect); -PreserveAuthorizationOnRedirect; -PreserveHttpMethodOnRedirect in the other cases HttpClient handles the redirects
Expected behavior
After setting -MaximumRedirection 3 it should remain 3 in the following requestsActual behavior
It changesError details
No response
Environment data
Latest Build
(every build since https://github.com/PowerShell/PowerShell/commit/ca4b6162f49aff1b89fa624a2e059794c740b6cb)Visuals
No response
Metadata
Metadata
Assignees
Labels
Resolution-FixedThe issue is fixed.The issue is fixed.WG-Cmdlets-Utilitycmdlets in the Microsoft.PowerShell.Utility modulecmdlets in the Microsoft.PowerShell.Utility module