Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 10 Powershell调用WebRequest“;Windows安全警告“;_Windows_Powershell_Cookies_Windows 10_Powershell 5.0 - Fatal编程技术网

Windows 10 Powershell调用WebRequest“;Windows安全警告“;

Windows 10 Powershell调用WebRequest“;Windows安全警告“;,windows,powershell,cookies,windows-10,powershell-5.0,Windows,Powershell,Cookies,Windows 10,Powershell 5.0,好吧,我认为这是微软需要立即解决的一个大问题。复制此操作的步骤: powershell>调用WebRequest“anywebsitewithcookies.com”(以microsoft.com为例) 发生的情况是,您收到以下警告: 现在这简直太可怕了。我无法理解为什么微软认为这是可以接受的,但是在Windows 8.1中有一个解决办法。如果您进入: 控制面板>互联网选项>隐私 您可以将cookies设置为始终被接受。这是摆脱此消息并仍然保留DOM解析功能的唯一方法-UseBasicPar

好吧,我认为这是微软需要立即解决的一个大问题。复制此操作的步骤:

powershell>调用WebRequest“anywebsitewithcookies.com”(以microsoft.com为例)

发生的情况是,您收到以下警告:

现在这简直太可怕了。我无法理解为什么微软认为这是可以接受的,但是在Windows 8.1中有一个解决办法。如果您进入:

控制面板>互联网选项>隐私

您可以将cookies设置为始终被接受。这是摆脱此消息并仍然保留DOM解析功能的唯一方法-UseBasicParsing对我来说不是一个解决方案,因为我想使用Invoke WebRequest返回的功能,而无需进行基本的解析

然而,现在在Windows 10中,Microsoft出于任何原因决定取消此滑块: i、 stack.imgur.com/jeNm3.jpg

这个问题可以在每台Windows 10计算机上重现,并且完全破坏了Invoke WebRequest在静默脚本环境中的使用方式,因为脚本挂起并等待对话框响应。是否有一种方法可以像8.1一样为所有人设置接受的cookie?我在Windows10中尝试了Internet选项中的每一项设置,但都没有成功。我相信他们已经停止使用它了,也许把这个设置移到了其他地方,但我找不到它。MicrosoftEdge也没有很多设置,所以没有一个是有用的


这真让人恼火。任何帮助都将不胜感激,因为这将在许多环境中造成相当大的混乱。

经过数小时的搜索,我发现即使Windows 10没有在Internet选项中显示滑块,它仍然使用与之对应的注册表项。所以你所要做的就是改变:

HKEY\ U当前\用户\软件\ Microsoft\Windows\CurrentVersion\Internet设置\Zones\3 1A10(Dword)到0,其中的值表示与Windows 8.1中滑块上的值相同: 阻止所有cookie:00000003 高位:00000001 中高:00000001 中:00000001 低:00000001
接受所有Cookie:00000000

两个小添加:Invoke Webrequest似乎不会在PoSH会话中重新读取注册表设置,因此在更改注册表设置后,请关闭PowerShell命令会话并在运行IWR之前重新打开它

第二个只是两个命令,它们将添加注册表值(第一个)并在之后删除它(第二个),以便您可以将它们放入脚本中。这样,您就不必一直在“接受所有cookies”模式下运行IE


也许这会有帮助
https://technet.microsoft.com/en-us/library/hh831611.aspx
我研究了一下,但我只是一个私人用户,web访问网关似乎是一个商业解决方案,因此对于家庭脚本编写来说有点过火。LTSB也受到影响吗?
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /t REG_DWORD /v 1A10 /f /d 0

reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v 1A10 /f