Android 发送http请求
2018-02-20 12:48
211 查看
get方式提交参数
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText et_username;
private EditText et_password;
private Button bt_login;
private String path="http://10.0.2.2:8080/day10_login/loginServit";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_username = (EditText) findViewById(R.id.et_username);
et_password = (EditText) findViewById(R.id.et_password);
bt_login = (Button) findViewById(R.id.bt_login);
//给按钮设置监听事件
bt_login.setOnClickListener(new MyOnclickListener());
}
public class MyOnclickListener implements OnClickListener{
@Override
public void onClick(View v) {
//创建子线程,并启动
new Thread(){
public void run() {
//获取输入的账号和密码
String username = et_username.getText().toString().trim();
String password = et_password.getText().toString().trim();
//设置参数
String params = "username="+username+"&password="+password;
//设置网络
try {
URL url = new URL(path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//设置请求的方式
connection.setRequestMethod("POST");
//设置请求超时事件
connection.setConnectTimeout(10000);
//设置两个请求头
connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
//告诉服务器传递数据的长度
connection.setRequestProperty("Content-Length", String.valueOf(params.length()));
//打开输出流
connection.setDoOutput(true);
//通过流把数据写到服务端
connection.getOutputStream().write(params.getBytes());
//获取响应吗
int code = connection.getResponseCode();
//判断响应吗的状态
if(code==200){
InputStream inputStream = connection.getInputStream();
String result = Utils.getString(inputStream);
showToast(result);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
}
}
public void showToast(final String result){
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();
}
});
}
}
import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { // 设置一个路径 private String path = "http://10.0.2.2:8080/day10_login/loginServit"; private EditText et_username; private EditText et_password; // Button bt_login; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_username = (EditText) findViewById(R.id.et_password); et_password = (EditText) findViewById(R.id.et_username); //bt_login = (Button) findViewById(R.id.bt_login); } public void login(View v) { new Thread() { public void run() { // 获取输入的账号和密码 String username = et_username.getText().toString().trim(); String password = et_password.getText().toString().trim(); String address = path + "?username=" + username + "&password=" + password; try { URL uri = new URL(address); HttpURLConnection openConnection = (HttpURLConnection) uri .openConnection(); // 设置请求方式 openConnection.setRequestMethod("GET"); // 设置请求超时的是金 openConnection.setConnectTimeout(10000); // 获取响应吗 int code = openConnection.getResponseCode(); // 判断响应吗状态 if (code == 200) { // 获取输入流 InputStream inputStream = openConnection .getInputStream(); // 将读取的东西转换为字符串 String result = Utils.getString(inputStream); showToast(result); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }; }.start(); } public void showToast(final String result) { runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show(); } }); } }post方式提交数据:import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText et_username;
private EditText et_password;
private Button bt_login;
private String path="http://10.0.2.2:8080/day10_login/loginServit";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_username = (EditText) findViewById(R.id.et_username);
et_password = (EditText) findViewById(R.id.et_password);
bt_login = (Button) findViewById(R.id.bt_login);
//给按钮设置监听事件
bt_login.setOnClickListener(new MyOnclickListener());
}
public class MyOnclickListener implements OnClickListener{
@Override
public void onClick(View v) {
//创建子线程,并启动
new Thread(){
public void run() {
//获取输入的账号和密码
String username = et_username.getText().toString().trim();
String password = et_password.getText().toString().trim();
//设置参数
String params = "username="+username+"&password="+password;
//设置网络
try {
URL url = new URL(path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//设置请求的方式
connection.setRequestMethod("POST");
//设置请求超时事件
connection.setConnectTimeout(10000);
//设置两个请求头
connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
//告诉服务器传递数据的长度
connection.setRequestProperty("Content-Length", String.valueOf(params.length()));
//打开输出流
connection.setDoOutput(true);
//通过流把数据写到服务端
connection.getOutputStream().write(params.getBytes());
//获取响应吗
int code = connection.getResponseCode();
//判断响应吗的状态
if(code==200){
InputStream inputStream = connection.getInputStream();
String result = Utils.getString(inputStream);
showToast(result);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
}
}
public void showToast(final String result){
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();
}
});
}
}
相关文章推荐
- Android中对服务器发送http请求
- Android之网络----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android系列之网络(三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)
- Android之网络----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android中发送Http请求(包括文件上传、servlet接收)的实例代码
- 利用com.loopj.android.http jar包 发送http请求过程分析<原创>
- Android中发送Http请求实例(包括文件上传、servlet接收)
- Android 发送http请求实例
- android发送http请求
- Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android系列之网络(三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)
- Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)
- android中Post方式发送HTTP请求
- Android上使用HttpURLConnection发送HTTP请求
- android 发送http请求 百度网页
- Android使用HttpURLConnection发送HTTP请求
- Android系列之网络(三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)
- Android系列之网络(三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)