localhost表示本机,android上要访问电脑,肯定不能通过localhost来访问,需要以下步骤:
电脑上启动web服务器,确保本机是能访问的。
Android必须与电脑是同IP段,即在同一个局域网才可以访问。
通过完整的>
电脑的防火墙必须关掉,或者增加端口的入站规则。
通过以上步骤即可在Android上访问电脑了。
提示:
建议在电脑上用一个随身wifi共享网络,让手机连接,或者直接在电脑上共享网络给手机。
将请求地址到其它的局域网电脑上访问测试,如果其它电脑上可以访问,则手机也可以访问。
如果IP不在同一个局域网,那么电脑需要做IP端口映射,让外网可以访问,手机才能访问。
使用fiddler
关于android 获取请求地址的详细例子请参考android学习手册,android学习手册包含9个章节,108个例子,源码文档随便看,例子都是可交互,可运行, 源码采用android studio目录结构,高亮显示代码,文档都采用文档结构图显示,可以快速定位。360手机助手中下载,图标上有贝壳
Fiddler是类似代理服务器的形式工作,它能够记录所有你的电脑和互联网之间的>
2、方法优劣
[优点]:
1)Fiddler *** 作简单、方便、功能强大
2)能实时抓包,可模拟修改请求
2)只需要手机支持代理即可
3)适用广,安卓、Iphone、Ipad、WinPhone等支持代理手机均适用
[缺点]:
1)电脑需要安装Fiddler
2)测试手机需要支持Wifi
3)测试手机与电脑需要同一网络
4)所测APP需支持代理
3、准备工作
1)检查电脑网络连接
a使用同网络内的另一台电脑)ing本机,检查是否连通正常。
原因:我之前测HTML5项目就发现Fiddler代理抓不到包,手机设置均正确,后发现是网络内找不到本机,本机防火墙设置问题。
另外需要关注是否同一网络,如果手机GPRS等上网,你在局域网内抓包哥觉得你可以改行了
(约定:后文所述Fiddler所在电脑均称为本机)
2)Fiddler安装
a下载地址: >
b安装:省略(下一步下一步即可)
3)Fiddler配置
a允许远程计算机连接Fiddler
菜单:Tools-> Fiddler Options->Connections,勾选"Allow remote computers to connect"
注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时端口要一致。
b配置可捕获>
菜单:Tools-> Fiddler Options->Connections,勾选"Capture >
再勾选"Decrypt >
注1:勾选项英文不认识,请Google,不另做解释
4)手机安装>
a首先确定Fiddler所在电脑的IP地址:例:19216888
b打开被测手机浏览器,访问>
注:Iphone、Ipad安装则很简单,点击安装即可。Android安装稍微麻烦点,则需要先设置手机锁屏密码、PIN码,安装证书时会提示,按步骤走即可。
4、实例
ThinkDrive抓包实例
一期测试时,涉汲到APP安全测试,因此需要查看传输数据是否存在明文密码等。
1)开启Fiddler,确定本机IP、Fiddler端口号
本机IP:19216888
Fiddler端口号:8888
2)手机连接本机所在同网络Wifi,设置代理
a代理主机名:Fiddler所在电脑IP
b代理服务器端口: Fiddler使用的端口
3)APP *** 作,生成请求数据
a例:登录
b例:退出登录
4)分析Fiddler抓包数据
a例:登录请求分析
1)双击查看登录请求,选择WebForms或JSON等其他类标签,查看请求参数值,对照接口文档及你想要测试的点分析,请求是否正确,查看返回数据是否正确。
2)同帐号,不同密码;不同帐号,同密码等测试用例,测试多次登录后发现,密码仅为MD5加密,没有对密码进行很好的加密传输
3)分析存在以下问题:
问题1:帐号密码采用>
问题2:密码虽采用MD5加密,但传输未加密,简单密码可以在线解密(图中密码在线解密不到1秒:123qwe);
问题3:密码不解密也一样可以登录,通过A帐号在app登录,再用sniffer得到的B 帐号与密码(MD5值),使用Fiddler修改A帐号的请求完成B帐号在APP登录。
注1:Fiddler功能使用,请Google或百度,此处不详说
注2:以上实例仅为参考,具体测试,以所相关业务及测试目标为导向进行测试分析。
5、其他
本文虽主要对Android手机抓包举例,但其目的是说明,不管是电脑,还是手机,还是其他上网终端,都可以通过代理的方式来抓包(HTTS、>
uses SystemSysUtils,
AndroidapiHelpers,
AndroidapiJNIBridge,
AndroidapiJniNet,
AndroidapiJNIGraphicsContentViewText,
AndroidapiJNIJavaTypes,
FMXHelpersAndroid;
function GetWIFIIP:string;
var
WFM:JObject;
WifiManager:JWifiManager;
WifiInfo:JWifiInfo;
IP:Integer;
begin
WFM:=TAndroidHelperContextgetSystemService(TJContextJavaClassWIFI_SERVICE);
WifiManager:=TJWifiManagerWrap((WFM as ILocalObject)GetObjectID);
WifiInfo:=WifiManagergetConnectionInfo;
IP:=WifiInfogetIpAddress;
Result:=Format('%d%d%d%d',[Lo(IP),Hi(IP),Lo(IP shr 16),IP shr 24]);
end;
//安卓系统WIFI下获取本机IP
以上就是关于安卓真机如何访问电脑上的localhost啊全部的内容,包括:安卓真机如何访问电脑上的localhost啊、如何抓取Android内嵌网页地址、如何用Delphi XE Android实现手机和wifi串行口模块通信等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)