بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
کلاس WebService
سلام دوستان
کسانی که کلاس وب سرویس رو برای اندروید های 4 به بالا نوشتن لطف کنن بزارن دیگر دوستان هم استفاده کنند
تشکر
برای این سوال 2 پاسخ وجود دارد.
مشاهده پاسخ صحیح

پاسخ به سوال
علی
8 سال پیش
+4
0
من در بعضی از پروژه ها از این استفاده می کنم :
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;
import javax.net.ssl.HttpsURLConnection;
public class RequestHandler {
public String sendPostRequest(String requestURL,
HashMap<String, String> postDataParams) {
HttpURLConnection conn = null;
URL url;
StringBuilder sb = new StringBuilder();
try {
url = new URL(requestURL);
conn = (HttpURLConnection) url.openConnection();
conn.setReadTimeout(15000);
conn.setConnectTimeout(15000);
conn.setRequestMethod("POST");
conn.setDoInput(true);
conn.setDoOutput(true);
OutputStream os = conn.getOutputStream();
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(os, "UTF-8"));
writer.write(getPostDataString(postDataParams));
writer.flush();
writer.close();
os.close();
int responseCode = conn.getResponseCode();
if (responseCode == HttpsURLConnection.HTTP_OK) {
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
sb = new StringBuilder();
String response;
while ((response = br.readLine()) != null) {
sb.append(response);
Log.e(G.log, "Data webService :" + sb.toString());
}
}
} catch (Exception e) {
e.printStackTrace();
Log.e(G.log, "Error checking internet connection", e);
} finally {
if (conn != null) {
conn.disconnect();
}
}
return sb.toString();
}
private String getPostDataString(HashMap<String, String> params) throws UnsupportedEncodingException {
StringBuilder result = new StringBuilder();
boolean first = true;
for (Map.Entry<String, String> entry : params.entrySet()) {
if (first)
first = false;
else
result.append("&");
result.append(URLEncoder.encode(entry.getKey(), "UTF-8"));
result.append("=");
result.append(URLEncoder.encode(entry.getValue(), "UTF-8"));
}
return result.toString();
}
}
اینم طریقه صدا زدنش :
RequestHandler rh = new RequestHandler();
HashMap<String, String> param = new HashMap<>();
param.put("action", "read");
String result = rh.sendPostRequest("http://localhost/example.com", param);
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .