Android通过GET和POST方式访问WCF服务(Json)

1.GET(无参)

/**
	 * GET方法调用不带参数
	 * */
	public void say() {
		try {
			HttpGet request = new HttpGet("http://10.14.4.158/Service1.svc/Say");
			request.setHeader("Accept", "application/json");
			request.setHeader("Content-type", "application/json");
			DefaultHttpClient httpClient = new DefaultHttpClient();
			HttpResponse httpResponse = httpClient.execute(request);
			if (httpResponse.getStatusLine().getStatusCode() == 200) {
				String a = retrieveInputStream(httpResponse.getEntity());
				Log.v("GET====>", a);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}


2.GET(带参数)

/**
	 * GET方法调用带参数
	 * */
	public void sayHello() {
		try {
			
			HttpGet request = new HttpGet("http://10.14.4.158/Service1.svc/SayHello/a/b");
			request.setHeader("Accept", "application/json");
			request.setHeader("Content-type", "application/json");
			DefaultHttpClient httpClient = new DefaultHttpClient();
			HttpResponse httpResponse = httpClient.execute(request);
			if (httpResponse.getStatusLine().getStatusCode() == 200) {
				String a = retrieveInputStream(httpResponse.getEntity());
		                   Log.v("GET====>", a);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}


3.POST(无参)

/**
	 * POST请求无参数
	 * */
	public void speak() {
		try {
			HttpPost request = new HttpPost("http://10.14.4.158/Service1.svc/Speak");
			// 发送请求
			HttpResponse httpResponse = new DefaultHttpClient()
					.execute(request);
			if (httpResponse.getStatusLine().getStatusCode() == 200) {
				String a = retrieveInputStream(httpResponse.getEntity());
				Log.v("POST====>", a);
			}

		} catch (Exception e) {
			e.printStackTrace();
		}
	}


4.POST(带参数)

/**
	 * POST请求带参数
	 * */
	public void speakHello() {
		try {
			HttpPost request = new HttpPost("http://10.14.4.158/Service1.svc/SpeakHello");
			request.setHeader("Accept", "application/json");
			request.setHeader("Content-type", "application/json");
			// 先封装一个 JSON 对象
			JSONObject param = new JSONObject();
			param.put("a", "1");
			// 绑定到请求 Entry
			StringEntity se = new StringEntity(param.toString());
			request.setEntity(se);
			// 发送请求
			HttpResponse httpResponse = new DefaultHttpClient().execute(request);
			if (httpResponse.getStatusLine().getStatusCode() == 200) {
				String a = retrieveInputStream(httpResponse.getEntity());
				Log.v("POST====>", a);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

5.Android记得添加联网权限

Android4.0以后不能在主线程里进行联网操作


服务器端实现

Android工程资源下载

你可能感兴趣的:(Android,ASP.NET)