展会信息港展会大全

安卓HTTP协议发送数据Get方式提交
来源:互联网   发布日期:2015-09-28 16:19:29   浏览:1802次  

导读:HTTP协议发送数据:数据小于2K可以使用GET方式。传送中文参数会出现乱码。服务端和客户端要统一编码。主要代码:package com.zyq.service;import java.net.HttpURLConnection;import java.net.URL;import ja......

HTTP协议发送数据:数据小于2K可以使用GET方式。

传送中文参数会出现乱码。

服务端和客户端要统一编码。

主要代码:

package com.zyq.service;

import java.net.HttpURLConnection;

import java.net.URL;

import java.net.URLEncoder;

import java.util.HashMap;

import java.util.Map;

import java.util.Map.Entry;

public class VideoService {

public static boolean save(String name,String time) throws Exception {

Map<STRING,STRING> parms=new HashMap<STRING, string="">();

parms.put("name", name);

parms.put("time", time);

parms.put("method", "save");

String path="http://www.android-study.com/wangluobiancheng/33.html";

return sendGETRequest(path,parms,"UTF-8");

}

/**

* 发送GET请求

* @param path请求路径

* @param parms请求参数

* @return 请求结果

* @throws Exception

*/

private static boolean sendGETRequest(String path, Map<STRING, string=""> parms,String encoding) throws Exception {

StringBuilder sb=new StringBuilder();

sb.append(path);

if (parms!=null && !parms.isEmpty()) {

sb.append("?");

for (Entry<STRING, string=""> entry: parms.entrySet()) {

sb.append(entry.getKey()).append('=')

.append(URLEncoder.encode(entry.getValue(), encoding))

.append('&');

}

sb.deleteCharAt(sb.length()-1);

}

URL url=new URL(sb.toString());

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

conn.setReadTimeout(1000*5);

conn.setRequestMethod("GET");

if (conn.getResponseCode()==200) {

return true;

}

return false;

}

}

activity

package com.zyq.main;

import com.zyq.service.VideoService;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

public class MainActivity extends Activity {

private EditText videonameText;

private EditText videotimetext;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

Button button=(Button)this.findViewById(R.id.button);

button.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

String name=videonameText.getText().toString().trim();

String time=videotimetext.getText().toString().trim();

try {

boolean bool=VideoService.save(name, time);

if (bool) {

Toast.makeText(MainActivity.this, R.string.succss, 1).show();

}

else {

Toast.makeText(MainActivity.this, R.string.fail, 1).show();

}

}

catch (Exception e) {

Toast.makeText(MainActivity.this, R.string.netfail, 1).show();

e.printStackTrace();

}

}

});

}

}

string.xml

<resources>

<string name="app_name">视频资讯管理器</string>

<string name="viodeoname">视频名称</string>

<string name="viodeotime">视频时长</string>

<string name="button">保存视频参数</string>

<string name="netfail">网络链接失败 !</string>

<string name="succss">保存视频参数成功!</string>

<string name="fail">保存视频参数成功!</string>

</resources>

赞助本站

人工智能实验室

相关热词: 安卓 HTTP 协议 Get方式

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港