gpt4 book ai didi

c# - 使用基本身份验证的 HttpWebRequest

转载 作者:IT王子 更新时间:2023-10-29 03:33:38 25 4
gpt4 key购买 nike

我正在尝试通过模拟我们在为此行为设置 IIS 时经常看到的“基本身份验证请求”的身份验证请求。

网址是:https://telematicoprova.agenziadogane.it/TelematicoServiziDiUtilitaWeb/ServiziDiUtilitaAutServlet?UC=22&SC=1&ST=2
(警告:https!)

此服务器作为应用程序服务器在 UNIX 和 Java 下运行。

这是我用来连接到这个服务器的代码:

CookieContainer myContainer = new CookieContainer();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://telematicoprova.agenziadogane.it/TelematicoServiziDiUtilitaWeb/ServiziDiUtilitaAutServlet?UC=22&SC=1&ST=2");
request.Credentials = new NetworkCredential(xxx,xxx);
request.CookieContainer = myContainer;
request.PreAuthenticate = true;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();

(我从本网站的另一篇文章中复制了这篇文章)。但是我从服务器收到了这个答案:

The underlying connection was closed: An unexpected error occurred on a send.

我想我已经尝试了我的 C# 知识所能提供的所有可能的任务,但没有...

最佳答案

您也可以自己添加授权 header 。

只需将名称设为“Authorization”,并将值设为“Basic BASE64({USERNAME:PASSWORD})”

var username   = "abc";
var password = "123";
string encoded = System.Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1")
.GetBytes(username + ":" + password));
httpWebRequest.Headers.Add("Authorization", "Basic " + encoded);

编辑

根据 What encoding should I use for HTTP Basic Authentication? 将编码从 UTF-8 切换为 ISO 8859-1和 Jeroen 的评论。

关于c# - 使用基本身份验证的 HttpWebRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4334521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com