使用Charles抓包获取API
在进行程序的开发之前,我们需要获得物流唐山APP的API,在这里我推荐大家使用Charles抓取数据包获得API。以下是Charles说明:
Charles 是在 Mac 下常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。
Charles 主要的功能包括:
1.截取 Http 和 Https 网络封包。
2.支持重发网络请求,方便后端调试。
3.支持修改网络请求参数。
4.支持网络请求的截获并动态修改。
5.支持模拟慢速网络。
接下来就是我讲介绍Charles的使用,首先,下载安装Charles,打开Charles,如下图所示进行设置:
在此填入代理端口,如8888,点击ok。
然后:
打开设置—>网络,获得本机ip地址192.168.1.103
接下来就是使用iPhone进行设置,首先保证手机与电脑在同一个局域网,点击连接的WIFI,在HTTP代理选项点击手动,输入电脑的ip地址以及我们设置的代理端口8888
使用Safari随便打开一个网页,发现Charles已经可以使用了。
接下来打开物流唐山APP,可以看到数据包已经被抓取到了
接下来就是查看每个请求的Request和Response,在这里我们可以看到GetMapPoint(首页地图API)请求使用GET方法。
Request参数,mMapx,mMapY,mtype。
Response返回结果:json数据,字典数组。
以下是我抓取的API列表:
- #define TSLAPI_PREFIX @"http://www.560315.com/MobileAPI/"
- #define TSLAPI_UPDATE @"versionIOS" //更新
- #define TSLAPI_MAP @"getMapPoint" //地图
- #define TSLAPI_SHARE @"shareList" //分享
- #define TSLAPI_LOGIN @"Login" //登录
- #define TSLAPI_REGISTER @"SaveUser" //注册
- #define TSLAPI_SAVEPWD @"SavePwd" //修改密码
- #define TSLAPI_RECOMMEND @"InformationRecommend" //热点关注
- #define TSLAPI_GoodsSource @"WlGoodsSourceInfoList" //货源
- #define TSLAPI_VehicleSource @"SearchWlVehicleSourceInfo" //车源
- #define TSLAPI_Warehouse @"WarehouseList" //库源
- // 第1列
- #define TSLAPI_DistributionStation @"DistributionStationList" //配货站
- // 找加油站 SearchUserInfo?type=20
- // 找加气站 SearchUserInfo?type=19
- // 找维修站 SearchUserInfo?type=21
- // 第2列
- #define TSLAPI_Railway @"LogisticsRailwayList" //物流专线
- // 找物流企业 SearchUserInfo
- #define TSLAPI_GoodsMasterList2 @"GoodsMasterList2" //发货企业
- #define TSLAPI_DistributionCenter @"DistributionCenterList" //配送中心
- #define TSLAPI_ExpressStation @"ExpressStationList" //快递网点
- #define TSLAPI_Terminal @"WlTerminalList" //末端网点
- // 第3列
- #define TSLAPI_Park @"LogisticsParkList" //园区
- #define TSLAPI_shebei @"WlshebeiList" //设备
- #define TSLAPI_Finance @"LogisticsFinanceList" //金融
- #define TSLAPI_People @"Hrm_ResumeList" //人才
- #define TSLAPI_Specialyer @"Specialyer" //专家
- // 第4列
- #define TSLAPI_Information @"SearchInformationList" //资讯
- #define TSLAPI_Price @"SearchLookForPrice" //运价
- // 找统计
- #define TSLAPI_Company @"Hrm_CompanyList" //招聘
- #define TSLAPI_AudioAdd @"AudioAdd" // 音频
- #define TSLAPI_FeedBackSave @"FeedBackSave" // 音频返回提交
- #define TSLAPI_CollectionSave @"User_CollectionSave" // 收藏
- #define User_CollectionList @"User_CollectionList" // 收藏列表
- #define TSLAPI_IMAGES @"http://www.560315.com/Content/Web/images/Information/"//图片
使用Charles抓包获取API的更多相关文章
- charles抓包
charles使用教程指南 charles使用教程指南 前言 移动APP抓包 PC端抓包 查看模式 其他功能 问题汇总 1. 前言: Charles是一款抓包修改工具,相比起burp,charles具 ...
- IOS charles抓包HTTP
charles通常用来截取本地的网络封包,但也可以用它来截取其他设备上的网络请求.本篇以IOS为例,讲解如何进行相应的操作. 1.charles上的设置 要截取iphone上的网络请求,我们要先将ch ...
- Charles抓包https
Charles抓包https 灰灰是只小贱狗 2018.05.08 10:46 字数 762 阅读 7800评论 3喜欢 3 抓取HTTPS请求包,对数据进行排查检验 1.安装Charles 2.电脑 ...
- Charles抓包(iOS的http/https请求)
Charles抓包(iOS的http/https请求) Charles安装 HTTP抓包 HTTPS抓包 1. Charles安装 官网下载安装Charles:https://www.charlesp ...
- charles抓包误点deny处理办法及日常抓包
误点deny方法在最底下~~ (博文为转载) 我们在开发网站项目的时候,我们可以通过浏览器的debug模式来看request以及response的数据,那么如果我们开发移动端项目没有网页呢?如何抓取数 ...
- 第2课:jmeter总结、Charles抓包
1. tps(throughput):每秒钟处理的事务数(请求数),定义与qps类似(qps:每秒完成的请求个数.) 响应时间(average):每个请求的平均响应时间 2. jmeter实现下载 ...
- 怎样使用charles抓包
本人因为是做前端的工作,需要后台写的一些数据,所以我需要一个神器能够抓到pc端或是移动端的后台数据,近期我发现一个神器“Charles”抓包神器. 需要操作的步骤如下: 1.先在网上下载Charles ...
- https 通信流程和Charles 抓包原理
1. https 通信流程 ①客户端的浏览器向服务器传送客户端SSL 协议的版本号,加密算法的种类,产生的随机数,以及其他服务器和客户端之间通讯所需要的各种信息.②服务器向客户端传送SSL 协议的版本 ...
- charles抓包工具使用指南
前言 移动APP抓包 PC端抓包 查看模式 其他功能 问题汇总 1. 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓 ...
随机推荐
- grep练习
1.查找特定字符串 [root@server3 mnt]# cat passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/no ...
- js Object.keys 用法
Object.keys() 可以将对象里的所以的键取出来放到一个数组中 1.传入对象, 返回 包含对象可枚举属性和方法的数组 var obj = {'a': 'Beijing', 'b': 'Ha ...
- Qt4.8.5移植
这两天搞了Qt移植 因为不小心 耽误了挺多时间 但是也比较好的掌握了 现在记录一下 准备工具: tslib-1.16 qt-everywhere-opensource-src-4.8.5.tar ...
- ios UITableView 搜索
自己实现 UITableView 搜索,相对于使用 UISearchDisplayController 来说自己写稍微麻烦了那么一点点,但是更加灵活.主要就是用一个字段区分出当前是搜索还是非搜索,然后 ...
- TortoiseGit学习系列之TortoiseGit是什么?
写该文章目的 肯定有人会遇到这样的问题: 最近换了一份新工作,新公司的源码管理都是使用GIT,习惯了之前的TFS和SVN进行项目源码管理和团队开发,第一次使用GIT进行团队开发和源码管理,颇有一些不习 ...
- JavaScript Ajax 实现学习
创建异步对象: function createXmlHttp(){ var xhobj=false; try{ xhobj=new ActiveXObject("Msxml2.XMLHTTP ...
- 浏览器对document.all的支持差异
从何而来从IE4开始IE的object model才增加了document.all对象,MSDN中也对 Object.all 有详细的说明,Object.all是个HTMLCollection,不是数 ...
- wordpress编辑器选择ckeditor、ckfinder
CKEditor for WordPress 搜索安装 上传功能需要ckfinder 下载 CKFinder for PHP: http://ckfinder.com/download 上传ckfin ...
- javascript typeof 和 instanceof 的区别和联系
这篇文章是我看完<JavaScript高级程序设计(第2版)>书籍的随笔文章,目的只有一个,以备自己和网友们方便参考和记忆! typeof是什么? typeof 是一个操作 ...
- 【关于使用SpringJUnit4ClassRunner单元测试报错问题】
今天单元测试如下的代码的时候发现项目老是报错: package com.yhb.jsxn.service; import java.text.SimpleDateFormat; import java ...