请求方式GET和POST的简单分别:
get方式是把参数附加到URL地址后面,如:
post是将请求参数放到请求体中,以流的方式传到服务器,另外上传文件时,一定是post方式
下面的代码是用post方式模拟用户登录com.yuanlp.qqloginpostandroid.os.Bundleandroid.support.v7.app.AppCompatActivityandroid.text.TextUtilsandroid.view.Viewandroid.widget.Buttonandroid.widget.CheckBoxandroid.widget.EditTextandroid.widget.Toastorg.json.JSONExceptionorg.json.JSONObjectjava.io.BufferedReaderjava.io.InputStreamjava.io.InputStreamReaderjava.net.HttpURLConnectionjava.net.URLjava.net.URLEncoderMainActivity AppCompatActivity {
==EditText EditText CheckBox Button String String (Bundle savedInstanceState) {
.onCreate(savedInstanceState)setContentView(R.layout.)= (EditText) findViewById(R.id.)= (EditText) findViewById(R.id.)= (CheckBox) findViewById(R.id.)= (Button) findViewById(R.id.)}
(View view){
= .getText().toString().trim()= .getText().toString().trim()(TextUtils.()||TextUtils.()){
Toast.(Toast.).show()}
.setEnabled()Thread(){
() {
{
Thread.()String path=URL url = URL(path)HttpURLConnection conn = (HttpURLConnection) url.openConnection()conn.setRequestMethod()conn.setConnectTimeout()conn.setRequestProperty()String data=+ URLEncoder.()++URLEncoder.()conn.setRequestProperty(String.(data.length()))conn.setDoOutput()conn.getOutputStream().write(data.getBytes())code = conn.getResponseCode()(code==){
InputStream is=conn.getInputStream()BufferedReader br=BufferedReader(InputStreamReader(is))StringBuffer sb=StringBuffer()String len=((len=br.readLine())!=){
sb.append(len)}
String result=sb.toString()runToastAnyThread(result)}
} (Exception e) {
e.printStackTrace()}
}
}.start()}
(String result) {
runOnUiThread(Runnable() {
() {
JSONObject jsonObject={
jsonObject=JSONObject()String code=jsonObject.get().toString()(.equals(code)){
Toast.(getApplicationContext()Toast.).show()}(.equals(code)){
Toast.(getApplicationContext()Toast.).show()}
} (JSONException e) {
e.printStackTrace()}
}
})}
}
原文:http://cm0425.blog.51cto.com/10819451/1941138