counterexample

فعلن فقط برنامه نویسی

counterexample

فعلن فقط برنامه نویسی

شنبه, ۹ مرداد ۱۳۹۵، ۱۲:۴۴ ق.ظ

۰

در بسیاری از برنامه ها ما نیاز داریم که به اینترنت وصل شیم و چندین درخواست http داشته باشیم.

در این پست قراره به شما نحوه ایجاد یک درخواست http ساده رو آموزش بدیم، با ما همراه باشید..

اول از همه برای ساخت HTTP client و HTTP post:

HttpClient httpClient = new DefaultHttpClient(); 
HttpPost httpPost = new HttpPost("http://www.example.com/login");
 

برای ایجاد پارامترهای post بصورت جفت key/value:

// Building post parameters, key and value pair
List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>(2);
nameValuePair.add(new BasicNameValuePair("email", "user@gmail.com"));
nameValuePair.add(new BasicNameValuePair("password", "encrypted_password"));

 

اما قبل از درخواستمون باید داده ها مون رو کد کنیم.. 

// Url Encoding the POST parameters
try {
    httpPost.setEntity(new UrlEncodedFormEntity(nameValuePair));
}
catch (UnsupportedEncodingException e) {
    // writing error to Log
    e.printStackTrace();
}

 

حالا نوبت اجرای httpPost توسط httpClientی هست که قبلن ساختیمش:

// Making HTTP Request
try {
    HttpResponse response = httpClient.execute(httpPost);
 
    // writing response to log
    Log.d("Http Response:", response.toString());
 
} catch (ClientProtocolException e) {
    // writing exception to log
    e.printStackTrace();
         
} catch (IOException e) {
    // writing exception to log
    e.printStackTrace();
}

با توجه به این کدی که در بالا میبینید، برای دیدن پاسخ (http response) به لاگ ها رجوع کنید..

 

حالا ببینیم کد کلیمون چه شکلی شده..

import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
 
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
 
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
 
public class AndroidHTTPRequestsActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
 
        // Creating HTTP client
        HttpClient httpClient = new DefaultHttpClient();
        // Creating HTTP Post
        HttpPost httpPost = new HttpPost(
                "http://www.example.com/login");
 
        // Building post parameters
        // key and value pair
        List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>(2);
        nameValuePair.add(new BasicNameValuePair("email", "user@gmail.com"));
        nameValuePair.add(new BasicNameValuePair("message",
                "Hi, trying Android HTTP post!"));
 
        // Url Encoding the POST parameters
        try {
            httpPost.setEntity(new UrlEncodedFormEntity(nameValuePair));
        } catch (UnsupportedEncodingException e) {
            // writing error to Log
            e.printStackTrace();
        }
 
        // Making HTTP Request
        try {
            HttpResponse response = httpClient.execute(httpPost);
 
            // writing response to log
            Log.d("Http Response:", response.toString());
        } catch (ClientProtocolException e) {
            // writing exception to log
            e.printStackTrace();
        } catch (IOException e) {
            // writing exception to log
            e.printStackTrace();
 
 }

 

شاد باشید :)

موافقین ۱ مخالفین ۰ ۹۵/۰۵/۰۹
counter example

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">