使用Fiddler抓取到的“姐夫酷”API接口
下午本来准备抓取些网页视频地址,做一个小的视频app,用来学习ijkplayer,无意中发现了一个app——姐夫酷,这是一个很简单的网页,它也有相应的一个比较简单的android app。 于是心血来潮,想把它的包抓取下来,以后可以拿来做些高仿项目,学习些新的技术。
对我来说抓包首选的当然是Fiddler,关于如何使用Fiddler,我不多介绍,可以参考利用利用Fiddler对Android模拟器网络请求进行抓包。
在抓包前,我们可以先看下它的官方app,非常简单:一个可以滑动的导航菜单+列表:
然后抓取到的接口主要有四个:
导航菜单列表
请求地址:http://www.gifcool.com/appdata/getmenu.php
请求方法:GET
请求参数:无
响应:
{
"data": [
{
"sortrank": 10,
"id": 12,
"typename": "动态图",
"reid": 0,
"type": 1
},
{
"sortrank": 20,
"id": 5,
"typename": "小视频",
"reid": 0,
"type": 2
},
{
"sortrank": 30,
"id": 11,
"typename": "图文",
"reid": 0,
"type": 4
},
{
"sortrank": 40,
"id": 10,
"typename": "污段子",
"reid": 0,
"type": 3
},
{
"sortrank": 45,
"id": 2,
"typename": "美女",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 3,
"typename": "搞笑",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 4,
"typename": "碉堡",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 6,
"typename": "熊孩子",
"reid": 12,
"type": 1
},
{
"sortrank": 50,
"id": 9,
"typename": "萌宠",
"reid": 12,
"type": 1
}
],
"msg": "成功",
"status": 200
}
根据分类的id获取到不同的列表项
请求地址:http://www.gifcool.com/appdata/getlist.php
请求方法:POST
请求参数:
| 参数 | 示例 | 含义 |
|---|---|---|
| current | 1 | 当前页,从1开始 |
| pagesize | 20 | 每页的数据个数 |
| typeid | 12 | 分类的id,即上方得到的菜单的id值 |
| version | 1.0.0 | 系统的版本号,当前是1.0.0 |
服务器响应:
{
"data": [
{
"id": 8420,
"title": "看你铲土真辛苦,老天都来帮你",
"pubdate": 1477888799,
"goodpost": 3,
"badpost": 0,
"notpost": 0,
"url": "http://www.gifcool.com/fun/8420.html",
"img": "http://ww3.sinaimg.cn/mw690/55c5a9bfgw1f9bco1apdyg209h0501ky.gif",
"img_s": "http://ww3.sinaimg.cn/small/55c5a9bfgw1f9bco1apdyg209h0501ky.gif",
"width": 341,
"info": " 我就铲了一锹而已啊!",
"height": 180,
"videolink": "",
"video_local": "",
"type": 1,
"msg_num": 0
}
],
"msg": "成功",
"status": 200,
"page": {
"totalnum": 6741, // 总数
"totalpage": 338, // 总页数
"current": 1 //第几页
}
}
喜欢(点赞)
请求地址:http://www.gifcool.com/plus/postGood.php
请求方法:POST
请求参数:
| 参数 | 示例 | 含义 |
|---|---|---|
| id | 8419 | 当前页,从1开始 |
| version | 1.0.0 | 系统的版本号,当前是1.0.0 |
响应:
{"msg":"操作成功","status":200}
不喜欢(评差)
请求地址:http://www.gifcool.com/plus/postBad.php
请求方法:POST
请求参数:
| 参数 | 示例 | 含义 |
|---|---|---|
| id | 8419 | 当前页,从1开始 |
| version | 1.0.0 | 系统的版本号,当前是1.0.0 |
响应:
{"msg":"操作成功","status":200}
关于喜欢和不喜欢两个接口,它(官方app)是把请求成后的信息(比如点赞成功)记录到了本地的数据库,通过本地数据库的信息来判断你是否已经点赞了。
说明:
该博文只是为了学习而写,该博文的接口也只能用来学习,不可以用做商业用途,以免造成侵权行为。
如果官方(姐夫酷版权所有者)不允许使用它的api接口,请提出,我会立即删除该博文。
如有疑问或建议,欢迎进QQ群来讨论交流:487786925( Android研发村 )
使用Fiddler抓取到的“姐夫酷”API接口的更多相关文章
- 在线音乐播放器-----酷狗音乐api接口抓取
首先身为一个在线音乐播放器,需要前端和数据库的搭配使用. 在数据库方面,我们没有办法制作,首先是版权问题,再加上数据量.所以我们需要借用其他网络播放器的数据库. 但是这些在线播放器,如百度,酷狗,酷我 ...
- App开发如何利用Fidder,在api接口还没有实现的情况下模拟数据,继续开发
相信app开发很多时候,都是等后台出接口,拿到数据调试错误.殊不知,我们完全可以不用等,只要有约定好的接口定义文档,借助工具就能做到,自己模拟数据返回~ 下面主要是在项目组开发过程中,使用F ...
- Postman - 功能强大的 API 接口请求调试和管理工具
Postman 是一款功能强大的的 Chrome 应用,可以便捷的调试接口.前端开发人员在开发或者调试 Web 程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的 Fi ...
- Web API接口 安全验证
在上篇随笔<Web API应用架构设计分析(1)>,我对Web API的各种应用架构进行了概括性的分析和设计,Web API 是一种应用接口框架,它能够构建HTTP服务以支撑更广泛的客户端 ...
- 常用精品API接口汇总
下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送.音乐.云.语义识别 ...
- SpringMVC Restful api接口实现
[前言] 面向资源的 Restful 风格的 api 接口本着简洁,资源,便于扩展,便于理解等等各项优势,在如今的系统服务中越来越受欢迎. .net平台有WebAPi项目是专门用来实现Restful ...
- 常用API接口汇总
下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送.音乐.云.语义识别 ...
- 【转载】常用精品API接口汇总
原文链接戳这里~~ 下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送 ...
- 使用HttpWebRequest请求API接口以及其他网站资源
很多时候,我们项目需要其他网站的资源,而这个被请求的网站可能属于你们自己开发管理的网站.也可能是公网上其他网站对外开发的API接口,比如说腾讯的微信公众平台的API接口.各大短信服务商的短信API接口 ...
随机推荐
- 阿里云安全研究成果入选人工智能顶级会议 IJCAI 2019, 业界首次用AI解决又一难题!
8月10日至8月16日,国际人工智能组织联合会议IJCAI 2019(International Joint Conference on Artificial Intelligence 2019)在中 ...
- 页面自动执行(加载)js的几种方法
https://www.cnblogs.com/2huos/p/js-autorun.html 一.JS方法1.最简单的调用方式,直接写到html的body标签里面: <html> < ...
- 深入学习:Windows下Git新手教程(下)
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/huangyabin001/article/details/35840591 声明:因为本人对于Git ...
- Puppet master-agent模型搭建
Puppet master-agent模型工作过程: 基于ssl xmlrpc进行通信,端口8140/tcp agent:默认每隔30分钟向master发送node name和facts,并请求cat ...
- Django项目:CRM(客户关系管理系统)--42--34PerfectCRM实现CRM自定义用户
#models.py # ————————01PerfectCRM基本配置ADMIN———————— from django.db import models # Create your models ...
- HDU6187 Destroy Walls
把这道题放了很久才来更新blog,似乎越来越懒了啊. 我们发现他给的城堡的坐标非常有趣啊,都是无理数. 对于其他所有点的坐标都是有理数的情况下,一个坐标为无理数的点绝对特别. 特别之处就是:经 ...
- 对BOM的总结
参考:JavaScript半知半解 TG著 BOM对象 Window对象是客户端JavaScript程序的全局对象. Window对象使得JavaScript与浏览器进行交互. 所有的JavaScri ...
- ORACLE的Copy命令和create table,insert into的比较
在数据表间复制数据是Oracle DBA经常面对的任务之一,Oracle为这一任务提供了多种解决方案,SQL*Plus Copy 命令便是其中之一.SQL*Plus Copy 命令通过SQL*Net在 ...
- Ajax 用法简介
使用Ajax实现页面的局部刷新 一.不依赖jquery时是这样的用法: var xhr=new XMLHttpRequest(); xhr.onreadystatechange=function(ev ...
- Redis之高可用、集群、云平台搭建
原文:Redis之高可用.集群.云平台搭建 文章大纲 一.基础知识学习二.Redis常见的几种架构及优缺点总结三.Redis之Redis Sentinel(哨兵)实战四.Redis之Redis Clu ...