微信调试APIAJAX的调试 SocketLog

Posted caigan的技术博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信调试APIAJAX的调试 SocketLog相关的知识,希望对你有一定的参考价值。

SocketLog适合Ajax调试和API调试, 举一个常见的场景,用SocketLog来做微信调试, 我们在做微信API开发的时候,如果API有bug,微信只提示“改公众账号暂时无法提供服务,请稍候再试” ,我们根本不知道API出来什么问题。 有了SocketLog就不一样了, 我们可以知道微信给API传递了哪些参数, 程序有错误我们也能看见错误信息

技术分享


    • 正在运行的API有bug,不能var_dump进行调试,因为会影响client的调用。这时候用SocketLog最好,SocketLog 通过websocket将调试日志打印到浏览器的console中。你还可以用它来分析开源程序,分析SQL性能,结合taint分析程序漏洞。

    • SocketLog 支持SAE等特殊的运行环境,Chromephp,FirePHP都不支持SAE,因为SAE接收不到非标准HTTP协议的Header,而ChromePHP和FirePHP传递了自定义Header

    • Chrome插件安装: https://chrome.google.com/webstore/detail/socketlog/apkmbfpihjhongonfcgdagliaglghcod

    • 目录结构:

    • chrome 目录是 chrome插件的源代码

    • chrome.crx 文件是chrome插件的安装包, 如果你无法从chrome应用商店安装,可进行手动安装, 浏览器地址栏输入并打开: chrome://extensions/  ,然后将chrome.crx拖入即可安装。

    • php 目录是php相关脚本。   SocketLog.server.php 是一个 Websocket服务器,  SocketLog.class.php是发送日志的类库,我们在发送日志的时候,需要载入这个类库然后调用函数slog即可。

    • 效果展示: 我们在浏览网站的时候在浏览器console中就知道程序做了什么,这对于二次开发产品十分有用。 下面效果图在console中打印出浏览discuz程序时,执行了哪些sql语句, 以及执行sql语句的调用栈。程序的warning,notice等错误信息也可以打到console中。技术分享



以上是关于微信调试APIAJAX的调试 SocketLog的主要内容,如果未能解决你的问题,请参考以下文章

微信web开发者工具如何进行调试微信网页授权

微信开发本地调试工具(模拟微信客户端)

安卓微信页面的调试

qq浏览器远程调试微信内置浏览器

使用chrome调试微信浏览器页面

如何使用微信web开发者工具调试程序