当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java java.net.Proxy用法及代码示例


代理是一种不可变的对象和工具或应用程序或程序或系统类型,有助于保护其用户和计算机的信息。它充当计算机和互联网用户之间的障碍。代理对象定义要与连接一起使用的代理设置。 Proxy servers 已预安装在 Windows 中的某种程序或应用程序中。它会自动保存在设置部分。您还可以自定义要使用代理的网站。 java.net 包中的InetSocketAddress class 实现 IP 套接字地址(IP 地址和端口号的组合)。该类的对象是不可变的,可用于绑定、连接目的

java.net.Proxy类代表一个代理人设置本质上是一个类型和一个套接字地址。该类包含一个特殊字段,即无代理字段。它写成代理NO_PROXY;此设置告诉协议处理程序不要使用任何代理设置并代表直接的联系。

用法:类别声明

public class Proxy extends Object

在讨论方法之前,让我们先讨论一下这个类的构造函数

Proxy(Proxy.Type type, SocketAddress sa)

类的方法如下

方法名称 说明
address() 返回代理的套接字地址,或者对于直接连接返回 null。
equals() 比较两个代理对象,仅当类型和地址相同时才返回 true。
hashCode() 返回代理的哈希码。
toString() 返回代理的字符串表示形式。
type() 返回代理对象的类型。

方法

  1. 首先,我们创建了一个套接字地址以便与代理对象一起使用。
  2. 然后使用该地址创建 HTTP 类型代理。
  3. 然后我们创建了与我们创建的代理的 URL 连接。

执行:

例子

Java


// Java Program to illustrate Proxy Class
// of java.net package
// Importing input output classes
import java.io.*;
// importing java net package to use address and url fields
import java.net.*;
// importing the java proxy package
import java.net.Proxy;
// Main class
public class GFG {
    // Main driver method
    public static void main(String[] args)
    {
        // Creating  socket address with port 8080
        // by creating object of SocketAddress class
        SocketAddress addr = new InetSocketAddress(
            "webcache.example.com", 8080);
        // Creating proxy object of type HTTP with
        // address addr using the class constructor
        Proxy proxy = new Proxy(Proxy.Type.HTTP, addr);
        // Try block to check for exceptions
        try {
            // Creating URL connection using the above proxy
            // by creating an object of URL class
            URL url = new URL("http://java.example.org/");
            // Now setting the connecting by
            // creating an object of URLConnection class
            URLConnection conn = url.openConnection(proxy);
        }
        // Catch block to handle the exceptions
        catch (Exception e) {
            // Print the line number here exception occurred
            // using the printStackTrace() method
            e.printStackTrace();
            // Display message only illustrating
            System.out.println(false);
        }
        // Printing Proxy Type
        // using type() method
        System.out.println("Proxy Type: " + proxy.type());
        // Printing Proxy Address
        // using address() method
        System.out.println("Proxy Address: "
                           + proxy.address());
        // Printing Proxy Hashcode
        // using hashCode() method
        System.out.println("Proxy HasHCode: "
                           + proxy.hashCode());
        // Printing Proxy String representation
        // using toString() method
        System.out.println("Proxy String: "
                           + proxy.toString());
    }
}

输出:



相关用法


注:本文由纯净天空筛选整理自mehulp1612大神的英文原创作品 java.net.Proxy Class in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。