您的位置:首页 > 理论基础 > 计算机网络

http post

2016-06-08 14:50 465 查看
 

使用HTTP POST 与HTTP GET类似,只是增加了创建包含NameValuePair对象实例的列表,使用UrlEncodedFormEntity包装列表.

 

Java代码  收藏代码

    public String executeHttpPost() throws Exception {  

            BufferedReader in = null;  

            try {  

                // 定义HttpClient  

                HttpClient client = new DefaultHttpClient();  

                  

                   

                // 实例化HTTP方法  

                HttpPost request = new HttpPost("****");  

                  

                // 创建名/值组列表  

                List<NameValuePair> parameters = new ArrayList<NameValuePair>();  

                parameters.add(new BasicNameValuePair("***", "***"));  

                parameters.add(new BasicNameValuePair("***", "***"));  

                  

      

                // 创建UrlEncodedFormEntity对象  

                UrlEncodedFormEntity formEntiry = new UrlEncodedFormEntity(  

                        parameters);  

                request.setEntity(formEntiry);  

                // 执行请求  

                HttpResponse response = client.execute(request);  

      

                in = new BufferedReader(new InputStreamReader(response.getEntity()  

                        .getContent()));  

                StringBuffer sb = new StringBuffer("");  

                String line = "";  

                String NL = System.getProperty("line.separator");  

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

                    sb.append(line + NL);  

                }  

                in.close();  

                String result = sb.toString();  

                return result;  

           

            } finally {  

                if (in != null) {  

                    try {  

                        in.close();  

                    } catch (Exception e) {  

                        e.printStackTrace();  

                    }  

                }  

            }  

        }  

    //////////////////////////////////////////////////////////////////////////////////////////////

    public void register(View v){

        final String name = etname.getText().toString();

        final String pwd = etpwd.getText().toString();

        final String real = etrealname.getText().toString();

        final String email = etmail.getText().toString();

        new Thread(){

            public void run() {

                try{

                    HttpClient client = new DefaultHttpClient();

                    HttpPost post = new HttpPost(HOST+"regist.do");

                    post.setHeader("Content-Type","application/x-www-form-urlencoded");

                    List<NameValuePair> parameters = new ArrayList<NameValuePair>();

                    parameters.add(new BasicNameValuePair("loginname", name));

                    parameters.add(new BasicNameValuePair("password", pwd));

                    parameters.add(new BasicNameValuePair("realname", real));

                    parameters.add(new BasicNameValuePair("email", email));

                    HttpEntity entity = new UrlEncodedFormEntity(parameters );

                    post.setEntity(entity );

                    HttpResponse resp = client.execute(post);

                    String result = EntityUtils.toString(resp.getEntity());

                    Log.d("TAG", "注册结果---->"+result);

                    Message.obtain(handler,100,result).sendToTarget();

                }catch(Exception e){

                    e.printStackTrace();

                }

            };

        }.start();

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: