Utiliser un profil Erlang httpc distinct pour les requêtes directes
Démarrez un profil nommé sans proxy configuré, transmettez son nom à chaque appel direct et arrêtez-le avec le composant propriétaire.
Laissez le profil proxy partagé en place et créez un profil distinct pour le travail direct. Dans une application où inets est lancé :
{ok, ProfilePid} =
inets:start(httpc, [{profile, direct_work}]).Un profil nouvellement créé n'a pas de proxy, sauf si l'application en définit un. Sélectionnez-le explicitement lors de la requête :
httpc:request(
get,
{"http://example.com/", []},
[],
[],
direct_work
).Omettre direct_work lors d'un appel ultérieur sélectionne à nouveau le profil par défaut. Inspectez les options de routage de ce profil avec httpc:get_options([proxy, https_proxy], direct_work).
Le profil possède aussi les cookies et la gestion des connexions. Conservez cet état avec son composant et arrêtez le profil avec inets:stop(httpc, ProfilePid) lorsque la charge de travail se termine. Il n'est pas nécessaire de réécrire l'état interne de httpc_manager ni de terminer un gestionnaire partagé pour obtenir cette route directe.