@@ -124,8 +124,31 @@ export const getFishShellScript = (callbackUrl: string, env: { [name: string]: s
124
124
echo 'HTTP Toolkit interception enabled'
125
125
` ;
126
126
127
- export const getPowerShellScript = ( callbackUrl : string , env : { [ name : string ] : string } ) => `${
128
- _ . map ( env , ( value , key ) => ` $Env:${ key } = "${ value . replace ( / " / g, '`"' ) } "` ) . join ( '\n' )
127
+ export const getPowerShellScript = ( callbackUrl : string , env : { [ name : string ] : string } ) => `
128
+ $HTTPTOOLKIT_envVars = Get-ChildItem Env:
129
+
130
+ ${
131
+ _ . map ( env , ( value , key ) => ` $Env:${ key } = "${ value . replace ( / " / g, '`"' ) } "` ) . join ( '\n' )
132
+ }
133
+
134
+ function Stop-Toolkit {
135
+
136
+ #Remove every env
137
+ $currentEnvVars = Get-ChildItem Env:
138
+ foreach ($envVar in $currentEnvVars) {
139
+ [System.Environment]::SetEnvironmentVariable($envVar.Name, $null)
140
+ }
141
+
142
+ #Set the old env variables
143
+ foreach ($var in $HTTPTOOLKIT_envVars) {
144
+ [System.Environment]::SetEnvironmentVariable($var.Name, $var.Value)
145
+ }
146
+
147
+ #Revert these two back to the default values
148
+ $PSDefaultParameterValues.Remove("invoke-webrequest:proxy")
149
+ $PSDefaultParameterValues.Remove("invoke-webrequest:SkipCertificateCheck")
150
+
151
+ Write-Host 'HTTP Toolkit interception disabled'
129
152
}
130
153
131
154
# We add a few special hooks just for Invoke-WebRequest.
@@ -137,7 +160,8 @@ export const getPowerShellScript = (callbackUrl: string, env: { [name: string]:
137
160
# Let the HTTP Toolkit app know this ran succesfully
138
161
Start-Job -ScriptBlock { Invoke-WebRequest "${ callbackUrl } " -NoProxy -Method 'POST' } | out-null
139
162
140
- Write-Host 'HTTP Toolkit interception enabled'
163
+ Write-Host "HTTP Toolkit interception enabled\`nTo stop intercepting type " -NoNewline
164
+ Write-Host "Stop-Toolkit" -ForegroundColor Red
141
165
` ;
142
166
143
167
// Find the relevant user shell config file, add the above line to it, so that
0 commit comments