[OK]Utilisation de HTTPProxy() ???

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

[OK]Utilisation de HTTPProxy() ???

Message par cage »

Bonjour a tous,
Ayant migré vers la version 5.60 de PB, j'ai voulu mettre à jour quelques applications.
Ces applications sont utilisées en entreprise derrière un Proxy.
Elles offrent la possibilité de vérifier s'il existe une mise à jour disponible sur internet.
J'ai demandé a un ami en entreprise de tester et cela ne fonctionne pas (du moins comme je le pensais).
Normalement, on devrait obtenir le message d'authentification du Proxy, ce qui n'est pas le cas.
Il y a-t-il une possibilité de déclarer HTTPProxy() pour qu'il utilise le proxy du système (cas en entreprise)
Merci pour vos retours d’expérience.
Gérard

Code : Tout sélectionner

EnableExplicit

Define header$, result$, retval, Message$
Define page$  = "index.php"
Define URL$   = "http://www.purebasic.com/"+page$
Define proxy  = #True
Define proxy$ = "127.0.0.1:8118"

Message$ = "Utilisation forcée du Proxy ?"
retval = MessageRequester("HTTPProxy()",Message$,#PB_MessageRequester_YesNo)
Select retval
  Case #PB_MessageRequester_Yes : proxy = #True
  Case #PB_MessageRequester_No  : proxy = #False
  Default : End
EndSelect

If InitNetwork()
  If proxy
    Debug "tester si le proxy est déclaré ?"+#CRLF$
    If proxy$ <> #Null$
      Debug "télécharger la page avec proxy"+#CRLF$
      HTTPProxy("http://"+proxy$)
      header$ = GetHTTPHeader(URL$)
      result$ = StringField(header$, 1, #LF$) : Debug result$
      If FindString(result$, "200 OK",1,#PB_String_NoCase)
        retval = ReceiveHTTPFile(URL$, page$, #PB_HTTP_NoRedirect)
        If retval : Debug "téléchargement avec proxy est OK" : EndIf
      EndIf
    Else
      Debug "pas de proxy déclaré"
    EndIf
  Else
    Debug "télécharger la page sans proxy" + #CRLF$
    header$ = GetHTTPHeader(URL$)
    result$ = StringField(header$, 1, #LF$) : Debug result$
    If FindString(result$, "200 OK",1,#PB_String_NoCase)
      retval = ReceiveHTTPFile(URL$, page$, #PB_HTTP_NoRedirect)
      If retval : Debug "téléchargement sans proxy est OK" : EndIf
    EndIf
  EndIf
EndIf
Dernière modification par cage le mer. 15/mars/2017 22:05, modifié 2 fois.
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: Utilsation de HTTPProxy() ???

Message par Marc56 »

Les proxy authentifiés d'entreprises sont en général configurés pour ne demander l'authentification qu'une seule fois par session (ou après un bail de 24H)
As-tu bien demandé à ton utilisateur de fermer sa session réseau au préalable ? (pas uniquement verrouiller la session mais se déconnecter)
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Utilsation de HTTPProxy() ???

Message par cage »

Dans mon ancienne entreprise, la demande d'authentification est pratiquement systématique.
Tant que l'application qui a obtenu l'identification est active, l'accès a internet se fait sans ré-identification.
Si on ferme l'application et qu'on la relance, il faut s'authentifier de nouveau.
Idem pour les navigateurs, il suffit de vider l'historique pour relancer la demande d'authentification.
Étant a la retraite, je n'ai plus trop les moyens de tester depuis l'intérieur de l'entreprise.
C'est pour cela que je demandais si certains avaient un retour en entreprise.
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Utilsation de HTTPProxy() ???

Message par cage »

Je pense qu'il y a un blême avec l'utilisation de HTTPProxy()
J'ai installé CCProxy sur mon PC
J'ai activé CCProxy sur l'adresse IP 192.168.0.10 port 808 en standard
J'ai validé Autoriser seulement: Utilisateur/Mot de passe (admin/1234)
Si je documente cette adresse/port dans Firefox, voici ce que j'obtiens:
Image
Ce qui me parait tout a fait normal
Si j"exécute ce bout de code

Code : Tout sélectionner

InitNetwork()
HTTPProxy("http://192.168.0.10:808")
header$ = GetHTTPHeader("http://www.purebasic.com/index.php")
Debug header$
J'obtiens ceci:

Code : Tout sélectionner

HTTP/1.1 407 Proxy Authentication Required
Server: Proxy
Proxy-Authenticate: Basic realm="CCProxy Authorization"
Connection: Close
Proxy-Connection: Close
Content-Length: 263
Mais rien de plus. Pourquoi une boite de dialogue ne s'affiche pas pour documenter User$/Password$
Si j'exécute ce bout de code

Code : Tout sélectionner

InitNetwork()
HTTPProxy("http://192.168.0.10:808","admin","1234")
header$ = GetHTTPHeader("http://www.purebasic.com/index.php")
Debug header$
J'obtiens ceci:

Code : Tout sélectionner

HTTP/1.1 200 OK
Date: Mon, 13 Mar 2017 19:30:43 GMT
Server: Apache/2.2.22 (Debian)
X-Powered-By: PHP/5.4.45-0+deb7u7
Vary: Accept-Encoding
Content-Type: text/html
Je passe bien a travers le Proxy et tout est normal.
La documentation de PB n'est pas claire du tout.
Syntax

HTTPProxy(URL$ [, User$, Password$])
Description

Specify a proxy to use for the following HTTP commands: GetHTTPHeader(), ReceiveHTTPFile() and ReceiveHTTPMemory().
User$ et Password$ ne sont donc pas optionnels dans PB
Il faut qu'ils soient documentés quelque part dans le programme ou il faut ouvrir une boite de dialogue pour les documenter.
Qu'en pensez vous. Avez vous réussi a utiliser HTTPProxy() correctement.
Merci de vos retours.
Gérard
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: Utilsation de HTTPProxy() ???

Message par Marc56 »

Je pense que la boîte de demande d'authentification est générée par le navigateur et non pas pas l'os hôte ou serveur
Je ne sais pas si le composant du Webgadget contient cet élément ?

Donc tu dois en faire une dans ton application.

Si header retourne 407
Ouvrir boîte
Relancer commande httpproxy avec nom d'utilisateur et mdp.
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Utilsation de HTTPProxy() ???

Message par cage »

Jusqu'à présent, j'utilisais le gadget WebGadget() qui lui affiche une fenêtre pour s'authentifier auprès du proxy.
Mais la mise en place n'est pas des plus aisée.
Cette nouvelle commande simplifie les chose a l’extrême.
Au final, voici comment je m'en sort. Toujours avec mon proxy local (CCProxy)
Ma vraie application devrait-être testée demain en entreprise.

Code : Tout sélectionner

EnableExplicit

Define header$, result$, retval, Message$
Define page$  = "index.php"
Define URL$   = "http://www.purebasic.com/"+page$
Define proxy  = #True
Define proxy$ = "192.168.0.10:808" ; http://www.youngzsoft.net/ccproxy/
Define user$  = GetEnvironmentVariable("Username") ; login normalisé identique sur PC et Proxy
Define password$

Message$ = "Utilisation forcée du proxy "+proxy$+" ?"
retval = MessageRequester("HTTPProxy()",Message$,#PB_MessageRequester_YesNoCancel)
Select retval
  Case #PB_MessageRequester_Yes : proxy = #True
  Case #PB_MessageRequester_No  : proxy = #False
  Default : End
EndSelect

If InitNetwork()
  If proxy
    Debug "Tester si le proxy est déclaré ?"+#CRLF$
    If proxy$ <> #Null$
      Debug "Télécharger la page avec proxy"+#CRLF$
      password$ = InputRequester("Test du proxy", "Entrez le mot de passe pour " + user$, #Null$, #PB_InputRequester_Password)
      If password$ = #Null$ : End : EndIf
      InitNetwork()
      HTTPProxy("http://"+proxy$, user$, password$)
      header$ = GetHTTPHeader(URL$) : Debug header$
      result$ = StringField(header$, 1, #LF$)
      If FindString(result$, "200 OK",1,#PB_String_NoCase)
        retval = ReceiveHTTPFile(URL$, page$, #PB_HTTP_NoRedirect)
        If retval : Debug "Téléchargement avec proxy OK" : EndIf
      EndIf
      password$ = #Null$
    Else
      Debug "Pas de proxy déclaré"
    EndIf
  Else
    Debug "Télécharger la page sans proxy" + #CRLF$
    header$ = GetHTTPHeader(URL$)
    result$ = StringField(header$, 1, #LF$) : Debug result$
    If FindString(result$, "200 OK",1,#PB_String_NoCase)
      retval = ReceiveHTTPFile(URL$, page$, #PB_HTTP_NoRedirect)
      If retval : Debug "Téléchargement sans proxy OK" : EndIf
    EndIf
  EndIf
EndIf
Gérard
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: Utilsation de HTTPProxy() ???

Message par Marc56 »

Très bien ccproxy, je ne connaissais pas :)

Une alternative (testée avec ccproxy)
Je cherche simplement le "407 Unauthorized" dans l'entête pour activer ou pas l'authentification

Code : Tout sélectionner

InitNetwork()

URL$        = "http://www.purebasic.com"
Local_File$ = GetTemporaryDirectory() + "purebasic.htm"
Proxy_User$ = "User-001"
Proxy_Pass$ = "123456"

HTTPProxy("127.0.0.1:808")

If FindString(GetHTTPHeader(URL$), "407 Unauthorized")
     Debug ">> Proxy authentifié présent, utilisation user/mdp"
     HTTPProxy("127.0.0.1:808", Proxy_User$, Proxy_Pass$)
     
     If FindString(GetHTTPHeader(URL$), "200 OK")
          Debug ">> Authentification Proxy OK, Page accessible"
          If ReceiveHTTPFile(URL$, Local_File$)
               Debug ">> Page chargée avec succès"
               RunProgram(Local_File$)
          EndIf
     EndIf
EndIf
Version avec un peu plus d'info (et qui teste "407 Unauthorized" et "Proxy")

Code : Tout sélectionner

InitNetwork()

URL$        = "http://www.purebasic.com"
Local_File$ = GetTemporaryDirectory() + "purebasic.htm"
Proxy_User$ = "User-001"
Proxy_Pass$ = "123456"

HTTPProxy("127.0.0.1:808")

Header$ = GetHTTPHeader(URL$)

If FindString(Header$, "407 Unauthorized") And FindString(Header$, "Proxy")
     Debug ">> Proxy authentifié présent, utilisation user/mdp"
     Debug "--- HEADER --- " + #CRLF$ + GetHTTPHeader(URL$) + "---HEADER ---"
     HTTPProxy("127.0.0.1:808", Proxy_User$, Proxy_Pass$)
     
     If FindString(GetHTTPHeader(URL$), "200 OK")
          Debug ">> Authentification Proxy OK, Page accessible"
          If ReceiveHTTPFile(URL$, Local_File$)
               Debug ">> Page chargée avec succès"
               RunProgram(Local_File$)
          EndIf
     EndIf
EndIf
KCC nous dira peut-être si ça marche ou pas sur son réseau :?:
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Utilsation de HTTPProxy() ???

Message par Kwai chang caine »

Oui justement, j'avais hate de quitter l'extraterrestre pour faire un essai sur windows

Alors déjà, chez nous, c'est encore un autre comportement que ceux que vous avez décrit
C'est un espece de bail, on a le panneau de merde, on entre login/mdp et apres on a X minutes pour aller jouer dans la plus grande cour de récrée of the world :mrgreen:
J'ai un peu la sensation que plus on s'en sert plus le temps est long, sans quand même dépasser un max
Par contre si il dort dans son coin, il me semble que le panneau revient plus vite

On peut donc refermer le navigateur, le bail est intact pendant ce laps de temps imparti
Par contre si j'ai ouvert avec IE, il faut que le réouvre avec FF, donc les autorisations sont données à chaque giciel, et pendant une durée

Et moi j'ai beau essayer de tout effacer, impossible de clore le bail par anticipation
J'ai toujours cherché des codes pour le faire et quedal, et pourtant ce genre de chose devrait être conseillé par les administrateurs, et en 10 ans, j'ai jamais rien vu qui permettait de se déconnecter de ce bail, si "quinquin" a une idée, au passage
Peut être une entete à envoyer au serveur, genre

Code : Tout sélectionner

HTTP/1.1 407 Proxy Authentication CasseToi
Server: Proxy
Proxy-Authenticate: Basic realm="CCProxy LacheMoiLaGrappe"
Connection: Close (Already say)
Proxy-Connection: Close (Say two time "Bourrin")
Content-Length: 263
Et il y a plusieurs autorisations, style une pour le ftp, une le http, car même une fois l'autorisation donnée, il arrive que le navigateur redemande une seconde authentification quelques secondes apres selon le lien que l'on clique 8O
Heureusement, ca dépasse jamais 2, un des administrateurs réseau m'avait dit que c'était selon le protocole utilisé ou un truc du genre

Voila tout ça pour dire qu'ici c'est pas facile de tester, car on est jamais sur qu'on a pu sortir parce que la porte est grande ouverte, ou parce que on a les clefs :|
Et à chaque fois faut, attendre cette fin de bail.....et putain ce qu'elle est courte quant on navigue...et ce qu'elle est longue quand on attend pour tester un code :twisted:
Un peu comme la compagnie d'une belle fille et d'une moche pendant le même temps.....une autre maniere d'expliquer les travaux d'einstein quoi :mrgreen:

J'essaierais de faire des tests des que j'aurais un peu de temps de libre, car c'est un sujet tres intéréssant :wink:
Dommage, certains des cadors du réseau du forum FR ne passent plus par ici, on aurait bien eu besoin d'eux, en ce moment avec cette nouvelle fonction :|
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Utilsation de HTTPProxy() ???

Message par cage »

Bonjour,
Une bonne nouvelle, cela fonctionne parfaitement en entreprise derrière un proxy.
Rien de plus simple a mettre en œuvre en fait une fois qu'on a compris.
Je passe tous les détails et vérifications, voila la synthèse:

Code : Tout sélectionner

EnableExplicit
Define URL$="http://www.purebasic.com/index.php"
Define proxy$ = "192.168.0.10:808" ; http://www.youngzsoft.net/ccproxy/
Define user$="admin"
Define password$="1234"
Define header$, result$, retval
InitNetwork()
HTTPProxy("http://"+proxy$,user$,password$)
header$ = GetHTTPHeader(URL$)
result$ = StringField(header$, 1, #LF$)
If FindString(result$, "200 OK",1,#PB_String_NoCase)
  retval = ReceiveHTTPFile(URL$, "index.php", #PB_HTTP_NoRedirect)
EndIf
En local, je fais mes tests avec CCProxy avec admin/1234 comme login/password
Je me suis laissé tromper par la documentation qui présente User$ et Password$ comme optionnels.
Gérard
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: Utilsation de HTTPProxy() ???

Message par Marc56 »

cage a écrit :Je me suis laissé tromper par la documentation qui présente User$ et Password$ comme optionnels.
Ces paramètres sont bien optionnels, puisque quand on utilise par exemple un proxy anti-pub, on n'a pas besoin de login/mdp

Quant à la fenêtre de login qui apparait dans le cas d'un proxy authentifié, elle est générée par l'application appelante et non pas par le proxy ou par le système.
La preuve, elle est différente si on se connecte depuis FF, IE ou n’importe quel autre navigateur ou logiciel sachant utiliser un proxy.
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Utilsation de HTTPProxy() ???

Message par cage »

Tout a fait d'accord, mais je m'attendais a ce que PB ouvre une fenêtre équivalente pour s'authentifier.
Cela aurait été un must.
La doc aurait pu indiquer que User$ et Password$ étaient obligatoires, mais que si non utilisés, les documenter a vide (#Null$)
Mais je reconnais que je me suis laissé emporter par l'idée que je m'en faisais.
Pour moi, une bonne documentation ne doit pas laisser de doute.
Autrement c'est une perte de temps a essayer de comprendre, car on ne comprends pas tous de la même manière, ce qui est déjà arrivé plusieurs fois sur ce forum.
Mais bon, la fonction HTTPProxy() fonctionne bien, ce qui est le principal.
Gérard
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: Utilsation de HTTPProxy() ???

Message par Marc56 »

Cela obligeait à taper du code inutile et à devoir se souvenir ou consulter la doc pour savoir si les paramètres "vides" sont des chaines, de valeurs numériques, des adresses, des pointeurs etc
Dans la philosophie de PB tous les paramètres optionnels d'une fonction peuvent êtres omis c'est bien plus rapide et lisible. Plus rapide aussi pour le compilateur (moins de valeurs à vérifier)

C'est grâce aussi à ces paramètres optionnels qu'on peut ouvrir une fenêtre avec seulement 6 paramètres plutôt que les 12 de l'API correspondante.

Pour la fenêtre, programmer la fonction pour ouvrir une boîte de dialogue serait un plus mais c'est du code à gérer en plus pour le système.
La qualité de PB vient aussi du fait que Fred fait très attention au rapport poids (taille de l'EXE) / puissance (vitesse de compilation) lors de l'ajout de nouvelles fonctionnalités.

Par contre un nouveau Message Requester avec deux champs login/password (hidden) ce serait bien. :idea: Je propose LoginRequester(). (Oui on peut le faire soi-même dirons certains, mais ça fait souvent partie des dialogues standards de la plupart des langages)

:wink:
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: [OK]Utilisation de HTTPProxy() ???

Message par Kwai chang caine »

Une bonne nouvelle, cela fonctionne parfaitement en entreprise derrière un proxy.
Bon...ça a été long, mais tester le proxy chez nous c'est "javel lacroix " et la banniere :oops:
En fait faut noir d'essais, car on a des proxy qui apparement se relaient, donc faut essayer avec l'un et l'autre, faut attendre cette histoire de bail que je vous ai raconté, bref...à chaque coup que je doit tester une routine pour traverser le proxy, je sais par avance que je vais passer une mauvaise journée. :|

Alors moi, je serais plus nuancé.
En fait ça ne marche pas vraiment, je sais pas comment est foutu le "bouzin", mais "HTTPProxy()" ne marche pas completement ici
Je n'arrive pas à traverser le PROXY en informant le Login/Mdp :|

Mais si je me connecte à la mano dans le panneau d'authentification, aprés ça passe...
Alors me direz vous, plus besoin de "HTTPProxy()" ??
Et ben figuré vous que si..si je l'enleve ça passe pas de nouveau, même connecté au bail 8O

Donc j'ai comme la sensation d'une double vérification
Il faut que je sois connecté à ce bail, et ensuite que je continue à utiliser HTTPProxy() :cry:

Depuis 10 ans sur les forums PB, j'ai encore trouvé aucun code qui passe directement en envoyant le Login/Mdp au proxy :|
Par contre certains codes ont donc bien besoin de la connection mano....mais une fois le bail créé, je n'ai plus besoin de m'authentifier.

Donc pour l'instant, ici, la fonction de FRED marche encore moins bien que les codes trouvé sur le forum, j'suis fatigué de ne jamais être comme les autres :cry:
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: [OK]Utilisation de HTTPProxy() ???

Message par Kwai chang caine »

Bon apres un nouvel essais, quand je commence impossible d'envoyer mon authentification au serveur
Je l'entre donc à la main, et apres le code marche, mais en fait plus besoin d'entrer le MDP
En fait HTTPProxy() sert quand même à quelque chose, car si je le commente, ça marche plus 8O
Bref ... essai pas vraiment concluant ici :|

Code : Tout sélectionner

EnableExplicit

Define header$, result$, retval, Message$
Define page$  = "index.php"
Define URL$   = "http://www.purebasic.com/"+page$
Define proxy  = #True
Define proxy$ = "noevipncp2n.edf.fr:3128" ; http://www.youngzsoft.net/ccproxy/
Define user$  = GetEnvironmentVariable("Username") ; login normalisé identique sur PC et Proxy
Define password$

Message$ = "Utilisation forcée du proxy "+proxy$+" ?"
retval = MessageRequester("HTTPProxy()",Message$,#PB_MessageRequester_YesNoCancel)
Select retval
  Case #PB_MessageRequester_Yes : proxy = #True
  Case #PB_MessageRequester_No  : proxy = #False
  Default : End
EndSelect

If InitNetwork()
  If proxy
    Debug "Tester si le proxy est déclaré ?"+#CRLF$
    If proxy$ <> #Null$
      Debug "Télécharger la page avec proxy"+#CRLF$
      password$ = InputRequester("Test du proxy", "Entrez le mot de passe pour " + user$, #Null$, #PB_InputRequester_Password)
      If password$ = #Null$ : End : EndIf
      InitNetwork()
      HTTPProxy("http://"+proxy$, user$, password$)
      header$ = GetHTTPHeader(URL$) : Debug header$
      result$ = StringField(header$, 1, #LF$)
      If FindString(result$, "200 OK",1,#PB_String_NoCase)
        retval = ReceiveHTTPFile(URL$, page$, #PB_HTTP_NoRedirect)
        If retval : Debug "Téléchargement avec proxy OK" : EndIf
      EndIf
      password$ = #Null$
    Else
      Debug "Pas de proxy déclaré"
    EndIf
  Else
    Debug "Télécharger la page sans proxy" + #CRLF$
    header$ = GetHTTPHeader(URL$)
    result$ = StringField(header$, 1, #LF$) : Debug result$
    If FindString(result$, "200 OK",1,#PB_String_NoCase)
      retval = ReceiveHTTPFile(URL$, page$, #PB_HTTP_NoRedirect)
      If retval : Debug "Téléchargement sans proxy OK" : EndIf
    EndIf
  EndIf
EndIf
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: [OK]Utilisation de HTTPProxy() ???

Message par Marc56 »

Code : Tout sélectionner

Define user$  = GetEnvironmentVariable("Username") ; login normalisé identique sur PC et Proxy
Cet exemple suppose que le username de proxy soit le même que le username de session windows.
Répondre