httpmethod.java

来自「这是linux下ssl vpn的实现程序」· Java 代码 · 共 64 行

JAVA
64
字号
package com.maverick.http;

import java.io.IOException;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.util.Hashtable;
import java.util.Vector;

public abstract class HttpMethod {

  protected String name;
  protected String uri;
  protected Hashtable parameters = new Hashtable();

  public HttpMethod(String name, String uri) {
      this.uri = uri;
      this.name = name;
  }

  public String getName() {
      return name;
  }

  public String getURI() {
      return uri;
  }

  public void setParameter(String name, String value) {
      if(!parameters.containsKey(name))
          parameters.put(name, new Vector());

      Vector v = (Vector)parameters.get(name);

      v.addElement(value);
  }

  public String getParameter(String name) {
      if(parameters.containsKey(name))
          return (String) ((Vector) parameters.get(name)).firstElement();
      else
          return null;
  }

  public String[] getParameters(String name) {
      if(parameters.containsKey(name)) {
          Vector v = (Vector) parameters.get(name);
          String[] tmp = new String[v.size()];
          v.copyInto(tmp);
          return tmp;
      } else
          return new String[] { };
  }

  public HttpResponse execute(HttpRequest request, HttpConnection con) throws IOException {

      // Add default headers
      request.setHeaderField("Host", con.getHost());
      request.setHeaderField("User-Agent", HttpClient.USER_AGENT);
      request.performRequest(this, con);
      return new HttpResponse(con);
  }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?