
这几天很有兴致的学习了百度云盘文件API接口的使用 初步是想做一个在线android应用 应用中的文档是存放在百度云盘的 主要是分一下几个步骤 注册百度账号 登录百度开发者中心 创建移动应用 获取对应的(API Key Secret Key) 开通pcs API权限 获取ACCESS_token(认证编码) 开发应用 注意 开通移动应用 获取key 获取token的时候我使用的安卓获取的方式 通过我写对应api的例子我发现 其实就两种情况 一种是get方式提交数据 另外一种是post方式提交数据 get方式提交数据 我们用获取云盘的信息为例 获取云盘信息前我们要知道 我们要准备好什么数据 请求参数 url: 标明我们要访问的网址路径 值固定问 method:标明我们是请求云盘信息 值固定为 info acceess_token:准入标识 值是我们自己申请的 接收返回参数 quota:云盘总容量 used:云盘使用容量 request_id:该请求的表示 没啥用 返回的一个json串如下格式 { quota : used : request_id : } 我在做的时候你使用Gson工具将json串转换到对应的entity类中了 代码如下 [] / @param URLConnection conn通过get方式获取StringBuffer @return / private StringBuffer getJsonString(URLConnection conn) { InputStreamReader isr = null; BufferedReader br = null; StringBuffer = null; try { isr = new InputStreamReader(conn getInputStream() gb ) br = new BufferedReader(isr) String line = null; = new StringBuffer() while ((line = br readLine()) != null) { append(line) append( \r\n ) } } catch (UnsupportedEncodingException e) { e printStackTrace() } catch (IOException e) { e printStackTrace() }finally{ try { if(isr!=null) isr close() } catch (IOException e) { System out println( 流关闭是异常 ) e printStackTrace() } } return ; } / @return @throws Exception 获取云空间的信息 / public CloudInfo getCloudInfo() throws Exception { URL u = new URL( method=info&access_token=你申请的token的值 ; URLConnection conn = u openConnection() // 打开网页链接 // 获取用户云盘信息 String cloudJson = this getJsonString(conn) toString()
// 解析成对象 下面有这个实体对象的类 Gson gson = new Gson() CloudInfo cloudInfo = gson fromJson(cloudJson CloudInfo class) System out println( 云盘信息 +cloudInfo) return cloudInfo; } / @param URLConnection conn通过get方式获取StringBuffer @return / private StringBuffer getJsonString(URLConnection conn) { InputStreamReader isr = null; BufferedReader br = null; StringBuffer = null; try { isr = new InputStreamReader(conn getInputStream() gb ) br = new BufferedReader(isr) String line = null; = new StringBuffer() while ((line = br readLine()) != null) { append(line) append( \r\n ) } } catch (UnsupportedEncodingException e) { e printStackTrace() } catch (IOException e) { e printStackTrace() }finally{ try { if(isr!=null) isr close() } catch (IOException e) { System out println( 流关闭是异常 ) e printStackTrace() } } return ; } / @return @throws Exception 获取云空间的信息 / public CloudInfo getCloudInfo() throws Exception { URL u = new URL( method=info&access_token=你申请的token的值 ; URLConnection conn = u openConnection() // 打开网页链接 // 获取用户云盘信息 String cloudJson = this getJsonString(conn) toString() // 解析成对象 下面有这个实体对象的类 Gson gson = new Gson() CloudInfo cloudInfo = gson fromJson(cloudJson CloudInfo class) System out println( 云盘信息 +cloudInfo) return cloudInfo; } [] package entity; import java lang reflect Type; / @author ydcun 获取云空间的信息 例如 { quota : 空间配额 单位为字节 used : 已使用空间大小 单位为字节 request_id : } / public class CloudInfo{ private Double quota; private Double used; private Double request_id; / @return the quota 空间配额 单位为字节 / public Double getQuota() { return quota; } / @param quota the quota to set 空间配额 单位为字节 / public void setQuota(Double quota) { this quota = quota; } / @return the used 已使用空间大小 单位为字节 / public Double getused() { return used; } / @param used the used to set 已使用空间大小 单位为字节 / public void setused(Double used) { this used = used; } / @return the request_id / public Double getRequest_id() { return request_id; } / @param request_id the request_id to set / public void setRequest_id(Double request_id) { this request_id = request_id; } @Override public String toString() { return new StringBuffer() append( 空间容量 ) append(this getQuota()/ / ) append( M; 已用 ) append(this getused()/ / ) append( M; ) toString() } } package entity; import java lang reflect Type; / @author ydcun 获取云空间的信息 例如 { quota : 空间配额 单位为字节 used : 已使用空间大小 单位为字节 request_id : } / public class CloudInfo{ private Double quota; private Double used; private Double request_id; / @return the quota 空间配额 单位为字节 / public Double getQuota() { return quota; } / @param quota the quota to set 空间配额 单位为字节 / public void setQuota(Double quota) { this quota = quota; } / @return the used 已使用空间大小 单位为字节 / public Double getused() { return used; } / @param used the used to set 已使用空间大小 单位为字节 / public void setused(Double used) { this used = used; } / @return the request_id / public Double getRequest_id() { return request_id; } / @param request_id the request_id to set / public void setRequest_id(Double request_id) { this request_id = request_id; } @Override public String toString() { return new StringBuffer() append( 空间容量 ) append(this getQuota()/ / ) append( M; 已用 ) append(this getused()/ / ) append( M; ) toString() } }
lishixinzhi/Article/program/Java/hx/201311/27162
首先,每一个@RequestMapping可以配置多个不同的请求路径,对于外部接口提供的接口,添加API后缀即可区分,添加拦截器实现对后缀是API接口的拦截(获取token,并自动登陆系统),在完成请求时通过封装将结果同一格式返回到前台,用户登录时,将token和用户对于的user信息保存到缓存中。
我们在使用百度统计 API 调用站点在百度统计的数据等 *** 作时,需要输入我们在百度统计中的 token 值和站点 ID,那么这两个值在百度统计哪里可以获取到?
1、开通百度统计数据导出服务并获取 Token 值
11 开通数据导出服务: 打开 百度统计官网 并登录 >> 点击顶端导航菜单“管理”>> 点击左侧导航菜单“其他设置 > 数据导出服务”>> 勾选“我已经阅读并同意《API 服务系统保密协议》”并点击立即开通按钮。
12 获取 Token 值: 开通数据导出服务后立马可以看到对应的 Token 值,如下图红框位置。
注意: 请您妥善保管此 token 值,不要外泄,否则会影响您调用相关接口。
2、获取百度统计中的站点 ID
打开 百度统计官网 并登录 >> 点击顶端导航菜单“基础报告”>> 点击左侧导航菜单“网站概况”即可看到地址栏中的一串数字,如 siteId=26888888,而数字 26888888 就是该站点的 ID。
如果有多个站点的话,点击右上角的切换为相应的站点,地址栏也会显示相应的网站 ID。
access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token。正常情况下access_token有效期为7200秒,重复获取将导致上次获取的access_token失效。由于获取access_token的api调用次数非常有限,建议开发者全局存储与更新access_token,频繁刷新access_token会导致api调用受限,影响自身业务。
店小秘可以根据以下 *** 作知道客户ID和APIToken:
在燕文后台然后点击进入制单系统EJF再次点击燕文接口ApiToken页面,查看客户ID和ApiToken,复制即可。
apitoken它的职责是保持接口访问的隐蔽性和有效性,保证接口只有可信任的来源才可以访问。
magic-api 是一个基于Java的接口快速开发框架,编写接口将通过magic-api提供的UI界面完成,自动映射为>
接口使用方法:
1接口调用者先申请分配一个clientid,clientsecret,并提供给接口提供者(服务器)一个可访问的callbackURL(用于接口access_token)。
2接口调用者使用clientid, clientsecret作为参数,向接口提供者发送请求。
接口提供者访问callbackURL发送access_token(有时间限制,超时后重新获取)。
3接口调用者使用access_token作为参数,调用其他接口获取相关信息。
4接口调用者在access_token超时后重新获取access_token。
有个疑问:
仅为了防止非法用户随意使用接口,需要这个复杂的机制吗?
接口使用>
以上就是关于Baidu云盘API接口的使用使用说明全部的内容,包括:Baidu云盘API接口的使用使用说明、api接口如何实现的、百度统计的token值和站点ID怎么获取附图文教程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)