首页 > 学院 > 开发设计 > 正文

HttpClient的Get请求和Post请求

2019-11-08 00:16:55
字体:
来源:转载
供稿:网友

Get方式提交服务器核心代码:

 try {                    //获取用户名和密码                    String name=mEt_userName.getText().toString().trim();                    String pwd=mEt_passWord.getText().toString().trim();                    //获取路径                    String path="http://192.168.56.1:8080/Login/LoginServlet?username="+name+"&password="+pwd+"";                    //获取HttpClient实例                    HttpClient client=new DefaultHttpClient();                    //获取一个Get请求                    HttpGet get=new HttpGet(path);                    //执行一个Get请求,得到一个服务器的响应对象                    HttPResponse response=client.execute(get);                    //HttpResponse response=client.execute(new HttpGet(path));                    //通过该响应对象获取服务器状态码                    int code=response.getStatusLine().getStatusCode();                    if(code==200){                        //获取服务器返回的数据(流)                        InputStream in=response.getEntity().getContent();                        //将字节流装换成字符流                        byte[] bys=new byte[1024];                        int len=0;                        StringBuilder sb=new StringBuilder();                        while((len=in.read(bys))!=-1){                            sb.append(new String(bys,0,len));                        }                        final String Content=sb.toString();                        in.close();                        //在主线程中显示数据                        runOnUiThread(new Runnable() {                            @Override                            public void run() {                                Toast.makeText(getapplicationContext(),Content,Toast.LENGTH_SHORT).show();                            }                        });                    }                }catch (Exception e){                    e.printStackTrace();                }Get方式提交服务器核心代码:

try {                    //获取用户名和密码                    String name=mEt_userName.getText().toString().trim();                    String pwd=mEt_password.getText().toString().trim();                    //获取路径                    String path="http://192.168.56.1:8080/Login/LoginServlet";                    //获取HttpClient实例                    HttpClient client=new DefaultHttpClient();                    //获取一个Post请求                    HttpPost post=new HttpPost(path);                    //封装请求的数据                    List<BasicNameValuePair> list =new ArrayList<>();                    BasicNameValuePair nameValuePair=new BasicNameValuePair("username",name);                    BasicNameValuePair pwdValuePair=new BasicNameValuePair("password",pwd);                    list.add(nameValuePair);                    list.add(pwdValuePair);                    //获取entity实体对象                    UrlEncodedFormEntity entity=new UrlEncodedFormEntity(list);                    //将请求数据的内容以实体形式(entity)准备(键值对形式)                    post.setEntity(entity);                    //执行Post请求并得到一个服务器的响应对象                    HttpResponse response=client.execute(post);                    //通过该服务器响应对象获取服务器状态码                    int code=response.getStatusLine().getStatusCode();                    if(code==200){                        //获取服务器返回的数据(流)                        InputStream in=response.getEntity().getContent();                        //将字节流装换成字符流                        byte[] bys=new byte[1024];                        int len=0;                        StringBuilder sb=new StringBuilder();                        while((len=in.read(bys))!=-1){                            sb.append(new String(bys,0,len));                        }                        final String Content=sb.toString();                        in.close();                        //在主线程中显示数据                        runOnUiThread(new Runnable() {                            @Override                            public void run() {                                Toast.makeText(getApplicationContext(),Content,Toast.LENGTH_SHORT).show();                            }                        });                    }服务器核心代码:
    public class LoginServlet extends HttpServlet{                    private static final long serialVersionUID = 1L;                    public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException {              //获取用户名              String name=request.getParameter("username");               //获取用户密码              String pwd=request.getParameter("password");                            System.out.println("username=="+new String(name.getBytes()));              System.out.println("password=="+pwd);                            if("abc".equals(name)&&"123".equals(pwd)){                  response.getOutputStream().write("sucess".getBytes());              }else {                  response.getOutputStream().write("login fail".getBytes());              }          }                    public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException{              System.out.println("post方式提交");              doGet(request, response);          }                }  Web配置信息:

    <?xml version="1.0" encoding="UTF-8"?>      <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">        <display-name>Login</display-name>        <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>        <servlet>            <servlet-name>LoginServlet</servlet-name>            <servlet-class>com.nocol.login.LoginServlet</servlet-class>        </servlet>        <servlet-mapping>            <servlet-name>LoginServlet</servlet-name>            <url-pattern>/LoginServlet</url-pattern>        </servlet-mapping>      </web-app>  


上一篇:Ionic 热更新

下一篇:基础-7 界面布局

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表