补充如下代码,使HTTP类的send方法可以使用get请求访问网络,send方法的参数为网站地址,返回值为服务器的响应内容(包括访问头)
//导包
public class HTTP{
//定义全局变量
public string send(string path){
//代码
}
}
安卓开发的权限已经打开,麻烦各位大佬给出详细代码和注释,谢!
补充如下代码,使HTTP类的send方法可以使用get请求访问网络,send方法的参数为网站地址,返回值为服务器的响应内容(包括访问头)
//导包
public class HTTP{
//定义全局变量
public string send(string path){
//代码
}
}
安卓开发的权限已经打开,麻烦各位大佬给出详细代码和注释,谢!
private void requestGet(HashMap<String, String> paramsMap) {
try {
String baseUrl = "https://xxx.com/getUsers?";
StringBuilder tempParams = new StringBuilder();
int pos = 0;
for (String key : paramsMap.keySet()) {
if (pos > 0) {
tempParams.append("&");
}
tempParams.append(String.format("%s=%s", key, URLEncoder.encode(paramsMap.get(key),"utf-8")));
pos++;
}
String requestUrl = baseUrl + tempParams.toString();
// 新建一个URL对象
URL url = new URL(requestUrl);
// 打开一个HttpURLConnection连接
HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();
// 设置连接主机超时时间
urlConn.setConnectTimeout(5 * 1000);
//设置从主机读取数据超时
urlConn.setReadTimeout(5 * 1000);
// 设置是否使用缓存 默认是true
urlConn.setUseCaches(true);
// 设置为Post请求
urlConn.setRequestMethod("GET");
//urlConn设置请求头信息
//设置请求中的媒体类型信息。
urlConn.setRequestProperty("Content-Type", "application/json");
//设置客户端与服务连接类型
urlConn.addRequestProperty("Connection", "Keep-Alive");
// 开始连接
urlConn.connect();
// 判断请求是否成功
if (urlConn.getResponseCode() == 200) {
// 获取返回的数据
String result = streamToString(urlConn.getInputStream());
Log.e(TAG, "Get方式请求成功,result--->" + result);
} else {
Log.e(TAG, "Get方式请求失败");
}
// 关闭连接
urlConn.disconnect();
} catch (Exception e) {
Log.e(TAG, e.toString());
}
}