Android利用JSON发送数据到服务器 – Android移动开发技术文章_手机开发 – 红黑联盟

new Thread()

{

@Override

public void run() {

// TODO Auto-generated method stub

Looper.prepare();

final String urlPath=”http://60.176.36.125:8080/wms/resisteruser.do”;

URL url;

try

{

url = new URL(urlPath);

/*封装子对象*/

JSONObject ClientKey = new JSONObject();

ClientKey.put(“appusername”, userName.getText().toString());

ClientKey.put(“passwd”, passWord.getText().toString());

ClientKey.put(“eigenvalues”, eigenValues.getText().toString());

ClientKey.put(“telephone”, phoneNum.getText().toString());

ClientKey.put(“apprealname”, realName.getText().toString());

ClientKey.put(“email”, emailNum.getText().toString());

ClientKey.put(“sex”, sex);

/*封装Person数组*/

JSONObject params = new JSONObject();

params.put(“Person”, ClientKey);

/*把JSON数据转换成String类型使用输出流向服务器写*/

String content = String.valueOf(params);

HttpURLConnection conn = (HttpURLConnection) url.openConnection();

conn.setConnectTimeout(5000);

conn.setDoOutput(true);//设置允许输出

conn.setRequestMethod(“POST”);

conn.setRequestProperty(“User-Agent”, “Fiddler”);

conn.setRequestProperty(“Content-Type”, “application/json”);

conn.setRequestProperty(“Charset”, encoding);

OutputStream os = conn.getOutputStream();

os.write(content.getBytes());

os.close();

/*服务器返回的响应码*/

int code = conn.getResponseCode();

if(code == 200)

{

BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), encoding));

String retData = null;

String responseData = “”;

while((retData = in.readLine()) != null)

{

responseData += retData;

}

JSONObject jsonObject = new JSONObject(responseData);

JSONObject succObject = jsonObject.getJSONObject(“regsucc”);

//System.out.println(result);

String success = succObject.getString(“id”);

in.close();

//System.out.println(success);

Toast.makeText(Register.this, success, Toast.LENGTH_SHORT).show();

Intent intentToLogin=new Intent();

intentToLogin.setClass(Register.this,Login.class);

startActivity(intentToLogin);

finish();

}

else

{

Toast.makeText(getApplicationContext(), “数据提交失败”, Toast.LENGTH_SHORT).show();

}

}

catch (Exception e)

{

// TODO: handle exception

throw new RuntimeException(e);

}

Looper.loop();

}

}.start();

来源URL:http://www.2cto.com/kf/201403/289328.html