
Vous apprendre à utiliser OkHttp pour installer une "station relais" pour les applications Android.
Les développeurs Android ont dû rencontrer cette situation : le serveur a soudainement restreint l'accès à une certaine région, ou la nécessité de simuler le comportement des utilisateurs dans différentes régions. Cette fois, nous devons donner à la demande de réseau une "station de relais" - c'est-à-dire que nous parlons aujourd'hui de proxy IP. prendre OkHttp cette bibliothèque couramment utilisée, en fait, configurer le proxy est plus simple que de commander un plat à emporter.
Pourquoi dois-je ajouter un agent à l'application ?
Par exemple, votre supermarché en bas de chez vous ne reçoit soudainement que les résidents locaux (restrictions IP), cette fois-ci, trouver un ami local pour vous aider à acheter (IP proxy) peut résoudre le problème. Les scénarios d'utilisation les plus courants sont les suivants :
- Tester la réponse du service dans différentes régions
- Empêcher le serveur cible de bloquer l'IP réelle
- Changement d'identité en cas d'enregistrement groupé
Configuration du proxy OkHttp en trois étapes
// Première étape : création d'un objet proxy
Proxy proxy = nouveau Proxy(Proxy.Type.
new InetSocketAddress("proxy.ipipgo.com", 8000)) ;
// Etape 2 : Configurer OkHttpClient
OkHttpClient client = new OkHttpClient.Builder()
.proxy(proxy)
.build() ;
// Etape 3 : Initier la requête comme d'habitude
Request request = new Request.Builder()
.url("https://你的目标网址")
.build() ; // Client.newCall(request) ;
client.newCall(request).execute() ;
Rappel ciblé :Le "proxy.ipipgo.com" dans l'adresse du proxy doit être remplacé par l'IP réelle, et il est recommandé d'utiliser l'API d'ipipgo pour l'obtenir dynamiquement (nous parlerons de la technique plus tard).
Comment choisir l'IP dynamique ou l'IP statique ?
| typologie | Scénarios applicables | paquet ipipgo |
|---|---|---|
| Résidentiel dynamique | Tâches du crawler nécessitant des changements fréquents d'adresse IP | À partir de 7,67 $/GB |
| Maisons statiques | Exigences commerciales stables à long terme | 35/IP/mois |
Compétences pratiques : commutation automatique de l'IP dynamique
Une erreur que commettent de nombreux débutants est d'écrire des IP à mort dans le code. La position correcte devrait être la suivante :
// Obtenir la dernière adresse IP de l'interface ipipgo
String[] ipData = getIpFromIpipgoAPI() ;
Proxy proxy = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress(ipData[0], Integer.parseInt(ipData[1])) ;)
N'oubliez pas de mettre à jour le pool d'adresses IP avant chaque requête. Le format de retour de l'API d'ipipgo est généralement "IP:Port" (par exemple, 110.122.33.44:8080).
Pièges courants AQ
Q : J'ai mis en place un proxy mais la demande n'aboutit pas ?
R : Tout d'abord, vérifiez trois éléments : 1. si l'IP a expiré 2. si le port est correct 3. si les privilèges du réseau sont ouverts. Vous pouvez utiliser le client ipipgo pour tester la connectivité du proxy.
Q : Les requêtes HTTPS nécessitent-elles un traitement particulier ?
R : Dans la plupart des cas, il n'est pas nécessaire de configurer sslSocketFactory dans OkHttpClient, mais en cas de vérification stricte du certificat par le serveur, vous devez configurer sslSocketFactory dans OkHttpClient (référence écrite spécifique au document officiel).
Q : Comment réaliser la rotation automatique de plusieurs adresses IP ?
R : Il est recommandé d'utiliser l'API d'ipipgo pour gérer les pools d'adresses IP, en sélectionnant de manière aléatoire les adresses IP disponibles avant chaque demande. Les demandes des entreprises peuvent être directement utilisées avec leur service de lignes louées TK.
Pourquoi recommandez-vous ipipgo ?
Après avoir fait appel à de nombreux services d'agences, sa famille a trois véritables points d'accroche :
1. trouver une assistance technique en cas de problème au milieu de la nuit
2. les forfaits de trafic ne sont pas aussi élevés que ceux de certaines plateformes, contrairement à l'abonnement mensuel obligatoire.
3. des exigences particulières (par exemple, l'adresse IP d'un petit pays) peuvent être traitées en trois jours.
Il est conseillé aux nouveaux venus de commencer à tester l'eau à partir de la version standard de Dynamic Residential, 7 plus de 1 G est suffisant pour tester la majorité du mois. Les applications de niveau entreprise s'adressent directement au service clientèle pour demander des solutions personnalisées, j'ai entendu dire que la récente ligne transfrontalière est en train de faire des activités.
Enfin, un mot d'avertissement : les paramètres du proxy ne sont pas un mystère, suivez les étapes et l'essentiel peut être réalisé. Si vous êtes bloqué à un moment donné, vérifiez d'abord si l'IP elle-même n'est pas à l'origine du problème - un fournisseur de services fiable peut vraiment vous épargner la moitié des efforts.

