Question

J'ai écrit une application Delphi qui nécessite une communication avec un serveur Web distant. Je passe internet_open_type_preconfig drapeau dans la fonction InternetOpen pour initialiser l'utilisation de mon application des fonctions Wininet et que mon application pour récupérer la configuration Internet de l'utilisateur du registre.

  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

Peut-être que je suis dû à mon ignorance, j'ai cru cette communication activée avec le serveur Web distant à l'aide des paramètres Internet particuliers de l'utilisateur, que ce soit une connexion directe ou via un proxy. Cela fonctionne certainement via le serveur proxy de mon entreprise.

Cependant, j'ai maintenant rencontré un client pour lequel ce qui précède ne lui permet pas d'accéder. Il voit une "authentification proxy requise" (code d'état HTTP 407) à la place.

Est-ce quelque chose que mon application devrait être manipulant (par exemple, fournir un formulaire pour entrer les détails d'authentification proxy et les transmettre avec mes demandes HTTP)? Existe-t-il une façon de ramasser ces informations automatiquement?

ou est-ce simplement bas à un problème de configuration que le service informatique du client peut facilement résoudre?

Tous les pointeurs seraient très appréciés.

Était-ce utile?

La solution

You may need to handle authentication, depending on what auth methods the proxy supports (it will tell you in the 407 response). See http://msdn.microsoft.com/en-us/library/aa384220(VS.85).aspx

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top