# Exemples de code

Tous les exemples utilisent le mode identifiants. Remplacez `USERNAME` et `PASSWORD` par les identifiants de la page « Paramètres du proxy » du tableau de bord et ils s'exécutent tels quels ; la syntaxe des paramètres du username est décrite dans la [référence de syntaxe](https://www.eproxies.io/docs/usage/username-syntax).

## cURL

```bash
# Proxy HTTP
curl -x proxy.eproxies.net:23333 -U "USERNAME-pool-flow-region-US:PASSWORD" https://ipinfo.io

# Proxy SOCKS5 (même port)
curl -x socks5://USERNAME-pool-flow-region-US:PASSWORD@proxy.eproxies.net:23333 https://ipinfo.io
```

## Python (requests)

```python
import requests

proxy_url = "http://USERNAME-pool-flow-region-US:PASSWORD@proxy.eproxies.net:23333"
proxies = {"http": proxy_url, "https": proxy_url}

response = requests.get("https://ipinfo.io", proxies=proxies, timeout=30)
print(response.json())
```

Variante SOCKS5 : remplacez `http://` par `socks5://` et installez l'extension : `pip install "requests[socks]"`.

## Node.js (axios)

```javascript
const axios = require("axios");
const { HttpsProxyAgent } = require("https-proxy-agent");

const agent = new HttpsProxyAgent(
  "http://USERNAME-pool-flow-region-US:PASSWORD@proxy.eproxies.net:23333"
);

axios
  .get("https://ipinfo.io", { httpsAgent: agent, timeout: 30000 })
  .then((res) => console.log(res.data))
  .catch((err) => console.error(err.message));
```

## Java (OkHttp)

```java
import java.net.InetSocketAddress;
import java.net.Proxy;
import okhttp3.Credentials;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

public class EProxiesDemo {
    public static void main(String[] args) throws Exception {
        Proxy proxy = new Proxy(Proxy.Type.HTTP,
                new InetSocketAddress("proxy.eproxies.net", 23333));

        OkHttpClient client = new OkHttpClient.Builder()
                .proxy(proxy)
                .proxyAuthenticator((route, response) -> {
                    String credential = Credentials.basic(
                            "USERNAME-pool-flow-region-US", "PASSWORD");
                    return response.request().newBuilder()
                            .header("Proxy-Authorization", credential)
                            .build();
                })
                .build();

        Request request = new Request.Builder().url("https://ipinfo.io").build();
        try (Response response = client.newCall(request).execute()) {
            System.out.println(response.body().string());
        }
    }
}
```

## Go

```go
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	proxyURL, _ := url.Parse(
		"http://USERNAME-pool-flow-region-US:PASSWORD@proxy.eproxies.net:23333")

	client := &http.Client{
		Transport: &http.Transport{Proxy: http.ProxyURL(proxyURL)},
	}

	resp, err := client.Get("https://ipinfo.io")
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
```

## PHP (cURL)

```php
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://ipinfo.io");
curl_setopt($ch, CURLOPT_PROXY, "proxy.eproxies.net:23333");
curl_setopt($ch, CURLOPT_PROXYUSERPWD, "USERNAME-pool-flow-region-US:PASSWORD");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
```

> La page « Exemples de code » du tableau de bord propose aussi une version C/C++, ainsi que des guides de configuration graphiques pour les navigateurs Chrome, Edge, Firefox et Safari et les mobiles Android et iOS, avec vos identifiants réels pré-remplis.

## Vérification et dépannage

* Utilisez `https://ipinfo.io` pour vérifier que l'IP de sortie et la géolocalisation correspondent à vos attentes.
* Erreur 407 : vérifiez que le username contient bien `-pool-flow` et que les identifiants sont corrects.
* Délai dépassé : retirez d'abord les paramètres de ciblage et testez la connectivité de base avec `USERNAME-pool-flow`, puis réintroduisez les paramètres un à un pour cerner le problème.
* L'intégration des frameworks d'automatisation (Selenium / Puppeteer / Playwright / Scrapy) est décrite dans [Frameworks d'automatisation](https://www.eproxies.io/docs/integrations/automation-frameworks).
