Bonjour,

Je poste car je ne trouve pas de réponse nulle part, ou alors des solutions qui ne marchent pas..

Je souhaiterais envoyer des requêtes HTTP ou HTTPS à une adresse, mais le problème c'est que la machine source possède plusieurs interfaces, avec différents VLANs.

Je voudrais spécifier par quelle interface (ou adresse ip directement) il faut passer pour lancer l'ordre.

en bref, l'équivalent de :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Socket c = new Socket(address, port);
mon code actuel :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
trustAllHttpsCertificates();									// precise au JRE d'accepter la connexion 				
		HttpsURLConnection.setDefaultHostnameVerifier(hv);
 
URL url = new URL(urlString);									// creation de l'url avec l'ordre HTTPS donné
		URLConnection urlConn = url.openConnection();					// ouverture de la connexion
		urlConn.setConnectTimeout(TIMEOUT_CONNEXION);
		urlConn.setDoInput(true);										// precise que l'on attend un retour de cette connexion	
		urlConn.setUseCaches(false);
		urlConn.setAllowUserInteraction(true);
 
 
		// encodage et authentification grâce au login/mdp  
		String authentication = CAMERA_LOGIN + ":" + CAMERA_PWD;
		String encodedPassword = "Basic " + new BASE64Encoder().encode(authentication.getBytes());
		urlConn.setRequestProperty("Authorization", encodedPassword);
		urlConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
		urlConn.connect();
je suis prêt à tester d'autres méthodes et API si nécessaire, mais si quelqu'un connait la manière simple...