栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用Google API Java客户端将请求发布到Google Shortener API并解析JSON响应?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用Google API Java客户端将请求发布到Google Shortener API并解析JSON响应?

您需要像这样将JSON内容添加到请求主体:

GenericData data = new GenericData();data.put("longUrl", "http://www.google.com/");JsonHttpContent content = new JsonHttpContent();content.data = data;request.content = content;

对于响应,请尝试使用JsonHttpParser而不是JsonCParser。您需要创建GenericJson的子类,该子类包含要检索的每个JSON属性带有@Key批注的字段。您可以使用response.parseAsString()查看所有可用属性。

这是一个完整的工作示例:

import com.google.api.client.googleapis.GoogleHeaders;import com.google.api.client.googleapis.GoogleTransport;import com.google.api.client.http.HttpRequest;import com.google.api.client.http.HttpResponse;import com.google.api.client.http.HttpTransport;import com.google.api.client.json.GenericJson;import com.google.api.client.json.JsonHttpContent;import com.google.api.client.json.JsonHttpParser;import com.google.api.client.util.GenericData;import com.google.api.client.util.Key;public class Shortener {    public static final String GOOGL_URL = "https://www.googleapis.com/urlshortener/v1/url";        public static void main(String[] args) throws Exception {        // setup up the HTTP transport        HttpTransport transport = GoogleTransport.create();        // add default headers        GoogleHeaders defaultHeaders = new GoogleHeaders();        transport.defaultHeaders = defaultHeaders;        transport.defaultHeaders.put("Content-Type", "application/json");        transport.addParser(new JsonHttpParser());        // build the HTTP GET request and URL        HttpRequest request = transport.buildPostRequest();        request.setUrl(GOOGL_URL);        GenericData data = new GenericData();        data.put("longUrl", "http://www.google.com/");        JsonHttpContent content = new JsonHttpContent();        content.data = data;        request.content = content;        HttpResponse response = request.execute();        Result result = response.parseAs(Result.class);        System.out.println(result.shortUrl);    }    public static class Result extends GenericJson {     @Key("id")        public String shortUrl;    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/438774.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号