Как получить IP-адрес клиента в апплете

Как получить IP-адрес клиента в апплете

Вы можете использовать следующий пример, чтобы получить IP-адрес клиента в апплете. Процесс не так прост, вы должны получить текущий хост и порт, откуда загружен апплет, и преобразовать его в объект Socket.

Socket socket = new Socket(getDocumentBase().getHost(), port);
ip = socket.getLocalAddress().getHostAddress();

Пример получения IP-адреса в апплете

package com.example.applet;

import java.applet.*;
import java.awt.Graphics;
import java.io.IOException;
import java.net.Socket;

public class AppletExample extends Applet {

    String ip;

    public void init() {

      try{
        int port;

        if(getDocumentBase().getPort()!=-1){
            port = getDocumentBase().getPort();
        }else{
            port = 80;
        }

            Socket socket = new Socket(getDocumentBase().getHost(), port);
        ip = socket.getLocalAddress().getHostAddress();

            }catch(IOException io){
        System.out.println(io.getMessage());
        }
    }

    public void paint( Graphics g ) {

       StringBuffer sb = new StringBuffer()
        .append(" IP address : ").append(ip);

       g.drawString(sb.toString(), 0,100);
    }

}
Related