JAVA 对外接口启用停用

Python09

JAVA 对外接口启用停用,第1张

1、首先系统会创建一个账号:密钥id,密钥secret,有效结束时间,状态(0:正常,1:停用),访问方法集合(空即可访问全部接口),签名sign则是通过一定的规则产生。

2、先设计一个通用接收字段。

3、签名加密算法定义。

4、账号授权,系统可以设置每个方法的权限,如果该账号没有被赋予接口访问权限,则不允许访问。

5、核验数据有效性,对每条数据都必须进行有效性核验。

6、接口访问数据记录,对每次接口访问的数据单独进行日志记录。

7、这样即可使JAVA对外接口启用停用。

public static String sendPostUrl(String url, String param, String charset) {

 

    PrintWriter out = null

    BufferedReader in = null

    String result = ""

    try {

      URL realUrl = new URL(url)

      // 打开和URL之间的连接

      URLConnection conn = realUrl.openConnection()

      // 设置通用的请求属性

      conn.setRequestProperty("accept", "*/*")

      conn.setRequestProperty("connection", "Keep-Alive")

      conn.setRequestProperty("<a href="https://www.baidu.com/s?wd=user-agent&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1d9P103nvuBPj9-mWTkuH790ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EnHfYP1DdP1TsrHT1rHnsPjRYn0"

 target="_blank" 

class="baidu-highlight">user-agent</a>", "Mozilla/4.0 (compatible MSIE 6.0 Windows NT 5.1SV1)")

      // 发送POST请求必须设置如下两行

      conn.setDoOutput(true)

      conn.setDoInput(true)

      // 获取URLConnection对象对应的输出流

      out = new PrintWriter(conn.getOutputStream())

      // 发送请求参数

      out.print(param)

      // flush输出流的缓冲

      out.flush()

      // 定义BufferedReader输入流来读取URL的响应

      in = new BufferedReader(new InputStreamReader(conn.getInputStream(), charset))

      String line

      while ((line = in.readLine()) != null) {

        result += line

      }

    } catch (Exception e) {

      System.out.println("发送 POST 请求出现异常!" + e)

      e.printStackTrace()

    }

    // 使用finally块来关闭输出流、输入流

    finally {

      try {

        if (out != null) {

          out.close()

        }

        if (in != null) {

          in.close()

        }

      } catch (IOException ex) {

        ex.printStackTrace()

      }

    }

    return result

  }

这个要结合面向对象设计思想去思考。

首先实例化的类作为一个角色,你可以把他理解为一个人。那么这个人肯定有与其他人(其他对象)交互的方法。那么这个方法也就别叫做接口。其实这算一种翻译上的过度强调。至少我理解的类的接口和方法是一回事。而interface定义的接口也算一种等待实现的方法。interface独特之处在于,任何实现了这个接口的类所产生的实例。都可以看作是这个interface的一个实例

所以说在设计接口和写对外方法(public)时一定要注意。这个方法(行为)是不是应该这个类(人)他应该具有的。否则就要考虑增加角色