如何从Intent Service中的服务器获取Json响应?

尼拉吉

我正在使用IntentServices将数据发布到服务器,但是我不知道如何在IntentService中以json格式获取响应,以及如何才能发现此IntentService是否在后台,并基于响应执行某些操作。

public class CDealIntentService extends IntentService {
private static final String s_szDealDetailUrl = "http://202.121.144.133:8080/ireward/rest/json/metallica/getDealDetailInJSON";
private static String s_szresult = "";
Context ctx;
String m_szMobileNumber, m_szEncryptedPassword;

/**
 * Creates an IntentService.  Invoked by your subclass's constructor.
 * <p/>
 * //    * @param name Used to name the worker thread, important only for debugging.
 */
public CDealIntentService() {
    super("CDealIntentService");
}

@Override
protected void onHandleIntent(Intent intent) {
    Context ctx = getApplicationContext();
    CLoginSessionManagement m_oSessionManagement = new CLoginSessionManagement(ctx);
    HashMap<String, String> user = m_oSessionManagement.getLoginDetails();
    m_szMobileNumber = user.get(CLoginSessionManagement.s_szKEY_MOBILE);// getting mobile from saved preferences..........
    m_szEncryptedPassword = user.get(CLoginSessionManagement.s_szKEY_PASSWORD);// getting password from shared preferences...

    InputStream inputStream;
    try {
        // 1. create HttpClient
        HttpClient httpclient = new DefaultHttpClient();
        // 2. make POST request to the given URL
        HttpPost httpPost = new HttpPost(s_szDealDetailUrl);
        String json;
        // 3. build jsonObject
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("agentCode", m_szMobileNumber);// mobile Number
        jsonObject.put("pin", m_szEncryptedPassword);// password
        //noinspection AccessStaticViaInstance
        jsonObject.put("dealcode", CDealCode.getInstance().getS_szDealCode());// dealCode
        // 4. convert JSONObject to JSON to String
        json = jsonObject.toString();
        // 5. set json to StringEntity
        StringEntity se = new StringEntity(json);
        // 6. set httpPost Entity
        httpPost.setEntity(se);
        // 7. Set some headers to inform server about the type of the content
        //  httpPost.setHeader("Accept", "application/json");   ///not required
        httpPost.setHeader("Content-type", "application/json");
        // 8. Execute POST request to the given URL
        HttpResponse httpResponse = httpclient.execute(httpPost);
        HttpEntity entity = httpResponse.getEntity();
        // 9. receive response as inputStream
        inputStream = entity.getContent();
        System.out.print("InputStream...." + inputStream.toString());
        System.out.print("Response...." + httpResponse.toString());

        StatusLine statusLine = httpResponse.getStatusLine();
        System.out.print("statusLine......" + statusLine.toString());
        ////Log.d("resp_body", resp_body.toString());
        int statusCode = statusLine.getStatusCode();
        if (statusCode == 200) {
            // 10. convert inputstream to string
            s_szresult = CJsonsResponse.convertInputStreamToString(inputStream);
        } else
            s_szresult = "Did not work!";

    } catch (Exception e) {
        Log.d("InputStream", e.getLocalizedMessage());
    }

    System.out.println("Result" + s_szresult);
}

}

萨加尔萨拉

使用以下代码,

if (statusCode == 200) {

    String jsonString = EntityUtils.toString(httpResponse.getEntity());

    JSONObject jsonObj = new JSONObject(jsonString);

    // Do operation on jsonObj
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我如何从 PHP 中的 JSON 服务器响应中获取数据

来自分类Dev

如何从服务器获取有效的json响应

来自分类Dev

如何在Volley中获取JSONObject服务器响应

来自分类Dev

如何从http响应中获取服务器名称

来自分类Dev

如何从Ping Federate Service提供程序到本地服务器获取SAML响应?

来自分类Dev

服务器在Grails中以302响应时如何获取响应正文?

来自分类Dev

如何使用HTML中的Ajax方法从节点服务器获取响应

来自分类Dev

如何获取WebView中每个请求的服务器响应代码

来自分类Dev

如何执行POST请求并从服务器获取响应?

来自分类Dev

如何在D上获取服务器响应代码?

来自分类Dev

如何使用PHP获取服务器响应时间

来自分类Dev

服务器错误时如何获取响应内容

来自分类Dev

如何在D上获取服务器响应代码?

来自分类Dev

如何从 PHP 服务器异步获取响应

来自分类Dev

如何在Dropzone JS中从服务器响应(JSON)调用错误?

来自分类Dev

如何使用授权在服务器上上传图像并在 Android 中显示收到的 json 响应?

来自分类Dev

如何强制服务器响应为json

来自分类Dev

Indy 10服务器:如何发送JSON响应?

来自分类Dev

如何检查服务器响应是否为json?

来自分类Dev

如何从Node JS服务器读取JSON响应?

来自分类Dev

如何将json数据发送到服务器并在android中获得Json响应?

来自分类Dev

如何从web.py服务器应用程序中的Post获取JSON值?

来自分类Dev

如何在Intent Service中获得活动

来自分类Dev

我在获取响应的同时正在处理我的Web服务-如何从服务器端获取响应?

来自分类Dev

如何执行服务器对服务器对POST的响应

来自分类Dev

如何在RecyclerView中从ViewHolder获取Intent?

来自分类Dev

如何从服务器获取JSON文件?(ASP.NET)

来自分类Dev

Swift:如果包装在数组中,我如何解析来自服务器的 JSON 响应?

来自分类Dev

如何在 Laravel 中返回有效的服务器 URL 可下载路径而不是 JSON 返回响应

Related 相关文章

  1. 1

    我如何从 PHP 中的 JSON 服务器响应中获取数据

  2. 2

    如何从服务器获取有效的json响应

  3. 3

    如何在Volley中获取JSONObject服务器响应

  4. 4

    如何从http响应中获取服务器名称

  5. 5

    如何从Ping Federate Service提供程序到本地服务器获取SAML响应?

  6. 6

    服务器在Grails中以302响应时如何获取响应正文?

  7. 7

    如何使用HTML中的Ajax方法从节点服务器获取响应

  8. 8

    如何获取WebView中每个请求的服务器响应代码

  9. 9

    如何执行POST请求并从服务器获取响应?

  10. 10

    如何在D上获取服务器响应代码?

  11. 11

    如何使用PHP获取服务器响应时间

  12. 12

    服务器错误时如何获取响应内容

  13. 13

    如何在D上获取服务器响应代码?

  14. 14

    如何从 PHP 服务器异步获取响应

  15. 15

    如何在Dropzone JS中从服务器响应(JSON)调用错误?

  16. 16

    如何使用授权在服务器上上传图像并在 Android 中显示收到的 json 响应?

  17. 17

    如何强制服务器响应为json

  18. 18

    Indy 10服务器:如何发送JSON响应?

  19. 19

    如何检查服务器响应是否为json?

  20. 20

    如何从Node JS服务器读取JSON响应?

  21. 21

    如何将json数据发送到服务器并在android中获得Json响应?

  22. 22

    如何从web.py服务器应用程序中的Post获取JSON值?

  23. 23

    如何在Intent Service中获得活动

  24. 24

    我在获取响应的同时正在处理我的Web服务-如何从服务器端获取响应?

  25. 25

    如何执行服务器对服务器对POST的响应

  26. 26

    如何在RecyclerView中从ViewHolder获取Intent?

  27. 27

    如何从服务器获取JSON文件?(ASP.NET)

  28. 28

    Swift:如果包装在数组中,我如何解析来自服务器的 JSON 响应?

  29. 29

    如何在 Laravel 中返回有效的服务器 URL 可下载路径而不是 JSON 返回响应

热门标签

归档