delphi call java http server

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, IdHTTP, Vcl.StdCtrls;

type
  TForm1 = class(TForm)
    btn1: TButton;
    btn2: TButton;
    IdHTTP1: TIdHTTP;
    mmo1: TMemo;
    procedure btn1Click(Sender: TObject);
    procedure btn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btn1Click(Sender: TObject);
var
  Url : string;//请求地址
  ParamList :TStringList;//请求参数列表
  ResponseStream : TStringStream; //返回信息
  ResponseStr : string;
begin
  ParamList := TStringList.Create;
  ParamList.Add('user=linlf');
  ParamList.Add('pwd=xxxx');
  ResponseStream := TStringStream.Create('');
  try
    //请求地址
    Url := 'http://localhost:8080/delphiJava/ServletDelphi';
    try
    IdHTTP1.Post(Url, ParamList,ResponseStream);
    //      IdHTTP1.Get(Url,ResponseStream);
    except
      on e : Exception do
      begin
        ShowMessage(e.Message);
      end;
    end;
    //获取网页返回的信息
    ResponseStr := ResponseStream.DataString;
    //网页中的存在中文时,需要进行UTF8解码
    ResponseStr := UTF8Decode(ResponseStr);
    mmo1.Text :=   ResponseStr;

  finally

    //IdHTTP1.Free;
//    ResponseStream.Free;
  end;
end;

procedure TForm1.btn2Click(Sender: TObject);
var
  Url : string;//请求地址
  ResponseStream : TStringStream; //返回信息
  ResponseStr : string;
begin
   ResponseStream := TStringStream.Create('');
  try
    //请求地址
    Url := 'http://localhost:8080/delphiJava/ServletDelphi';
    try
       IdHTTP1.Get(Url,ResponseStream);
    except
      on e : Exception do
      begin
        ShowMessage(e.Message);
      end;
    end;
    //获取网页返回的信息
    ResponseStr := ResponseStream.DataString;
    //网页中的存在中文时,需要进行UTF8解码
    ResponseStr := UTF8Decode(ResponseStr);
    mmo1.Text :=   ResponseStr;
  finally


    //IdHTTP1.Free;
//    ResponseStream.Free;
  end;
end;


end.



<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <display-name>
    delphiJava</display-name>
    <servlet>
        <description>
        </description>
        <display-name>
        ServletDelphi</display-name>
        <servlet-name>ServletDelphi</servlet-name>
        <servlet-class>
        ServletDelphi</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>ServletDelphi</servlet-name>
        <url-pattern>/ServletDelphi</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
</web-app>
import java.io.IOException;
import java.io.PrintWriter;


import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class ServletDelphi extends HttpServlet {


/**
* Constructor of the object.
*/
public ServletDelphi() {
super();
}


/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}


/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
* 
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


response.getWriter().println("Hello Servlet Delphi!");
}


/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
* 
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


response.getWriter().println("Hellox Servletx, " + request.getParameter("user")
        +";"+request.getParameter("pwd")+ "!");
}


/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occurs
*/
public void init() throws ServletException {
// Put your code here
}


}

猜你喜欢

转载自www.cnblogs.com/tobetterlife/p/12171430.html