[英]Resolving a Proxy Authentication Required Issue
我已经编写了一个Delphi应用程序,该应用程序需要与远程Web服务器进行通信。 我将INTERNET_OPEN_TYPE_PRECONFIG标志传递到InternetOpen函数中以初始化我的应用程序对WinINet函数的使用,并通过这样做使我的应用程序从注册表中检索用户的Internet配置。
NetHandle := InternetOpen('WebTool', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
if Assigned(NetHandle) then
begin
try
hConnect := InternetConnect(NetHandle, PChar(ServerName), ServerPort,
nil, nil, INTERNET_SERVICE_HTTP, 0, 1);
if Assigned(hConnect) then
begin
try
// Open the request
hRequest := HttpOpenRequest(hConnect, PChar('POST'),
PChar(ServerScript), nil, nil, nil,
HTTPOpenRequestFlags, 0);
if Assigned(hRequest) then
begin
也许由于我的无知,我相信这可以使用用户特定的Internet设置(无论是直接连接还是通过代理)与远程Web服务器进行通信。 它当然可以通过我公司的代理服务器工作。
但是,我现在遇到一个客户,上面的内容不允许他访问。 他看到的是“需要代理身份验证”(HTTP状态代码407)。
这是我的应用程序应该处理的事情吗(例如,提供一个表单来输入代理身份验证详细信息,并将其与我的HTTP请求一起传递)? 有没有一种自动获取此信息的方法?
还是这仅仅是客户IT部门可以轻松解决的配置问题?
任何指针将不胜感激。
您可能需要处理身份验证,具体取决于代理支持的身份验证方法(它将在407响应中告诉您)。 参见http://msdn.microsoft.com/zh-cn/library/aa384220(VS.85).aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.