1

Web サービスの HttpGet メソッドからデータをフェッチしたい。Web サービスには 2 つのヘッダー情報が必要です。

セットパラメータを追加するにはどうすればよいですか?

"Content-Type", "application/json"
"Authorization", "Bearer " + Utils.PreferencesGetir(ActivityPuanlarim.this, "Preferences_Token"))

Json データ

[  
{
"ID": 12,
"KayitTarihi": "2016-07-21T08:37:01.603",
"KullanilanPuan": 0,
"KuponID": 2,
"KuponKullanim": [],
"KuponNo": "S7240061",
"KuponAciklama": "Açıklama 1",
"Puan": 40
},
{
"ID": 13,
"KayitTarihi": "2016-07-21T09:38:48.877",
"KullanilanPuan": 0,
"KuponID": 2,
"KuponKullanim": [],
"KuponNo": "S7240071",
"KuponAciklama": "Açıklama 2",
"Puan": 40 
 }
]

AsyncTask doInBackground

 @Override
    protected Void doInBackground(Void... voids) {

        List<NameValuePair> params = new ArrayList<NameValuePair>();

        params.add(new BasicNameValuePair("Content-Type", "application/json"));
        params.add(new BasicNameValuePair("Authorization", "Bearer " + Utils.PreferencesGetir(ActivityPuanlarim.this, "Preferences_Token")));


        JSONArray json = jParser.makeHttpRequestArray(URL, "GET", params);

        try {

            if (Utils.InternetKontrol(ActivityPuanlarim.this) == true) {
                for (int i = 0; i < json.length(); i++) {
                    JSONObject c = json.getJSONObject(i);


                    String id = c.getString("ID");
                    String kayitTarihi = c.getString("KayitTarihi");
                    String kullanilanPuan = c.getString("KullanilanPuan");
                    String kuponID = c.getString("KuponID");
                    String kuponKullanim = c.getString("KuponKullanim");
                    String kuponNo = c.getString("KuponNo");
                    String kuponAciklama = c.getString("KuponAciklama");
                    String puan = c.getString("Puan");


                    // Hashmap oluşturulur
                    HashMap<String, String> map = new HashMap<String, String>();


                    map.put("ID", id);
                    map.put("KayitTarihi", kayitTarihi);
                    map.put("KullanilanPuan", kullanilanPuan);
                    map.put("KuponID", kuponID);
                    map.put("KuponKullanim", kuponKullanim);
                    map.put("KuponNo", kuponNo);
                    map.put("KuponAciklama", kuponAciklama);
                    map.put("Puan", puan);

                    puanlarimTumKayitlarList.add(map);
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
4

1 に答える 1

1

HttpRequest を送信しないため、これらのパラメーターは必要ありません。URLConnection を介してサーブレットからコンテンツをリクエストしてから、アクティビティでデータを読み取る必要があります。

例: https://docs.oracle.com/javase/tutorial/networking/urls/readingWriting.html

編集:次のようにActivityでHttpGetを使用できることを読みました:

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
httpGet.addHeader("key", VALUE);
HttpResponse httpResponse = httpClient.execute(httpGet);
于 2016-08-12T12:29:22.760 に答える