首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mapquest:如何解析mapquest json请求

mapquest:如何解析mapquest json请求
EN

Stack Overflow用户
提问于 2014-05-09 18:32:16
回答 1查看 396关注 0票数 0

我正在使用mapquest导航。我正在使用javascript代码来检索数据。

http://www.mapquestapi.com/directions/v2/route?key=YOUR_KEY_HERE&from=Lancaster,PA&to=York,PA&callback=renderNarrative

我正在获取应用程序中的json内容,但不知道如何使用这些数据进行导航。我已经创建了一个新项目并运行代码

代码语言:javascript
复制
class jsonapp extends AsyncTask<String, Void, String>{

@Override
protected String doInBackground(String... uri) {
    // TODO Auto-generated method stub
    HttpClient httpclient = new DefaultHttpClient();
    HttpResponse response;
    String responseString = null;
    try {
        response = httpclient.execute(new HttpGet(uri[0]));
        StatusLine statusLine = response.getStatusLine();
        if(statusLine.getStatusCode() == HttpStatus.SC_OK){
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            response.getEntity().writeTo(out);
            out.close();
            responseString = out.toString();

            Log.d("Filter", ""+responseString);
        } else{
            //Closes the connection.
            response.getEntity().getContent().close();
            throw new IOException(statusLine.getReasonPhrase());
        }
    } catch (ClientProtocolException e) {
        //TODO Handle problems..
    } catch (IOException e) {
        //TODO Handle problems..
    }
    return responseString;

我在试着做一个叙述性导航。我该怎么做呢?

我做得对吗?

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2016-06-07 15:19:13

这个东西对我很管用:

我已经对路由矩阵做了同样的操作,你可以尝试对做同样的操作。

代码语言:javascript
复制
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URLEncoder;

import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONObject;

    public class ApacheHttpClientGet {

        static DefaultHttpClient httpClient = new DefaultHttpClient();
        static HttpGet getRequest;
        static HttpResponse response;

        public static void main(String[] args) {
            try {

         getRequest = new HttpGet("http://www.mapquestapi.com/directions/v2/routematrix?key=XFZxlqQQJbNaABkGXuaRfUHSIdYXuIBh&.format(lat,long)&inFormat=kvp&outFormat=json&from=BuddhdaveColony,vadodara,gujarat&to=oldpadraroad,vadodara,gujarat&unit=k");

        response = httpClient.execute(getRequest);


        if (response.getStatusLine().getStatusCode() != 200) {
                    throw new RuntimeException("Failed : HTTP error code : "
                            + response.getStatusLine().getStatusCode());

        }


        BufferedReader br = new BufferedReader(new InputStreamReader(
                        (response.getEntity().getContent())));

        String output;
        String jsonData="";
        System.out.println("Output from Server .... \n");
        while ((output = br.readLine()) != null) {

                    jsonData += output + "\n";
                    System.out.println(jsonData);

        }

        JSONObject obj = new JSONObject(jsonData);
        System.out.println("allToAll: " + obj.getBoolean("allToAll"));
        System.out.println("distance: " + obj.getJSONArray("distance"));

        httpClient.getConnectionManager().shutdown();

        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
                e.printStackTrace();
        }

        }

    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23562394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档