如何使用get属性发送http请求?

时间:2013-08-22 14:36:24

标签: android http get request

我的意思是我想向我的服务器发送一个http请求,如:

  

http://blahblah.blah/index.php?命令=使

在android

2 个答案:

答案 0 :(得分:4)

你可以这样做:

Http Post:

public void postData() {
    // Create a new HttpClient and Post Header
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://blahblah.blah/index.php");

    try {
        // Add your data
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
        nameValuePairs.add(new BasicNameValuePair("command", "make"));        
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

        // Execute HTTP Post Request
        HttpResponse response = httpclient.execute(httppost);

    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
    } catch (IOException e) {
        // TODO Auto-generated catch block
    }
} 

Http Get

HttpResponse response = null;
try {    
        // Create http client object to send request to server     
        HttpClient client = new DefaultHttpClient();
        // Create URL string
        String URL = "http://blahblah.blah/index.php?command=make";
        // Create Request to server and get response
        HttpGet httpget= new HttpGet();
        httpget.setURI(new URI(URL));
        response = client.execute(httpget);
    } catch (URISyntaxException e) {
        e.printStackTrace();
    } 
    catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
    } catch (IOException e) {
        // TODO Auto-generated catch block
    }

答案 1 :(得分:1)

您只需将URL设置为使用URL连接时的URL

即可
// you can pass mUrl as http://blahblah.blah/index.php?command=make and if you are expecting a returned value, you can compare that with successVal

public static boolean checkSuccess(String mUrl, String successVal)
{
    InputStream is = null;
    try
    {
        URL url = new URL(mUrl);
        URLConnection ucon = url.openConnection();
        ucon.setConnectTimeout(5000);
        ucon.setReadTimeout(5000);
        is = ucon.getInputStream();
        BufferedInputStream bis = new BufferedInputStream(is, 8192);
        ByteArrayBuffer baf = new ByteArrayBuffer(300);
        int current = 0;
        while ((current = bis.read()) != -1)
        {
            baf.append((byte) current);
        }
        String success = new String(baf.toByteArray());

        return success.equals(successVal);
    }
    catch (Exception e)
    {
        return false;
    }
    finally
    {
        try
        {
            if (is != null)
            {
                is.close();
            }
        }
        catch (Exception e)
        {
        }
    }
}