HuolalaTech / page-spy-web

Debug remotely and easily like chrome devtools.
https://www.pagespy.org
MIT License
4.55k stars 271 forks source link

支持在没有 server 端的情况下,client 端可以操作录制等功能 #146

Closed aliuq closed 8 months ago

aliuq commented 8 months ago

Description

一些特殊的环境,无法或者不适合部署 server 端服务,导致 client 端实例化出错,client 端仅需要录制用户的操作和记录当时的接口日志等,不需要实时和 server 端进行交互

Suggested solution

允许 client 端进行录制

Alternative

No response

Additional context

No response

Validations

wqcstrong commented 8 months ago

PageSpy 的核心是实时在线远程调试,「录制」这些都是附属的插件功能,所以不支持你的这个想法。

要实现你的需求,可自行通过 rrweb 实现录制功能和下载导出功能。

aniude commented 6 months ago

mark 一下,如果有这个功能确实更好了

wqcstrong commented 6 months ago

mark 一下,如果有这个功能确实更好了

@aniude @aliuq 久等了两位,PageSpy 在 v1.7.3 版本中就已经支持了离线日志模式、以及上传(或者下载)离线日志并回放的功能。使用方式:

<!-- 主 SDK -->
<script crossorigin="anonymous" src="https://<your-host>/page-spy/index.min.js"></script>

<!-- DataHarborPlugin,用于缓存离线日志、并提供上传/下载功能 -->
<script crossorigin="anonymous" src="https://<your-host>/plugin/data-harbor/index.min.js"></script>

<!-- RRWebPlugin,用于记录客户端的操作轨迹 -->
<script crossorigin="anonymous" src="https://<your-host>/plugin/rrweb/index.min.js"></script>

<script>
  // 注册两个插件
  PageSpy.registerPlugin(new DataHarborPlugin());
  PageSpy.registerPlugin(new RRWebPlugin());

  window.$pageSpy = new PageSpy({
    // 开启离线模式
    offline: true
  });
</script>

基于以上代码,就可以实现 「client 端仅需要录制用户的操作和记录当时的接口日志等,不需要实时和 server 端进行交互」。

wqcstrong commented 6 months ago

下面的内容也请参考:

wqcstrong commented 6 months ago

有任何问题,可以加入技术支持群咨询(中文 README 的底部有群二维码)

aniude commented 6 months ago

好的。好像很不错的样子 。 有没有一个 full package 的包(包括所有 plugin),即我不需要同时 load 多个 plugin.

wqcstrong commented 6 months ago

好的。好像很不错的样子 。 有没有一个 full package 的包(包括所有 plugin),即我不需要同时 load 多个 plugin.

暂无 😄