JsRpc 使用教程

JsRpc 使用教程

【免费下载链接】JsRpc 远程调用(rpc)浏览器方法,免去抠代码补环境 【免费下载链接】JsRpc 项目地址: https://gitcode.com/gh_mirrors/js/JsRpc

1. 项目介绍

JsRpc 是一个基于 WebSocket 的远程过程调用(RPC)框架,允许开发者通过 WebSocket 协议从服务器端调用浏览器中的 JavaScript 函数。这种机制免去了在浏览器环境中手动编写和调试 JavaScript 代码的麻烦,特别适合于需要进行网页自动化、爬虫、或者网页内数据交互的场景。

2. 项目快速启动

环境准备

  • Go 语言环境
  • Node.js 环境(用于运行前端示例)

启动服务

首先,克隆项目到本地:

git clone https://github.com/jxhczhl/JsRpc.git
cd JsRpc

然后,编译并运行 Go 服务端:

go build -o JsRpc main.go
./JsRpc

启动前端示例

在另一个终端中,进入 JsEnvDemo 目录,并启动前端服务:

cd JsEnvDemo
npm install
npm start

打开浏览器,访问 http://localhost:8080,可以看到示例页面。

注入 JavaScript 环境

在页面的开发者工具控制台中,粘贴以下代码来注入 JsRpc 的前端环境:

// 从服务器获取 JsEnv_De.js 脚本并注入
var script = document.createElement('script');
script.src = 'http://localhost:12080/resouces/JsEnv_De.js';
document.body.appendChild(script);

3. 应用案例和最佳实践

案例一:网页数据抓取

假设我们需要从一个网页中抓取一些动态加载的数据,可以注册一个 JavaScript 函数来获取数据,并通过 JsRpc 将数据发送到服务器。

  1. 在浏览器控制台中注册函数:
var client = new Hlclient('ws://localhost:12080/ws?group=rpcDemo');
client.regAction('fetchData', function(resolve) {
    // 这里编写获取数据的 JavaScript 代码
    var data = document.getElementById('someElement').innerText;
    resolve(data);
});
  1. 在服务器端调用该函数:
curl -X POST http://localhost:12080/go -d 'group=rpcDemo&action=fetchData'

案例二:自动化测试

自动化测试网页表单提交等操作,可以通过 JsRpc 在服务器端控制浏览器的行为。

  1. 注册自动化操作函数:
client.regAction('submitForm', function(resolve) {
    document.getElementById('someForm').submit();
    resolve('Form submitted');
});
  1. 触发自动化操作:
curl -X POST http://localhost:12080/go -d 'group=rpcDemo&action=submitForm'

4. 典型生态项目

目前,JsRpc 已经被应用于多个开源项目,例如:

  • 网页自动化工具
  • 爬虫框架
  • 网页数据交互中间件

这些项目利用 JsRpc 的能力,实现了复杂的网页操作和数据抓取任务,极大地提高了开发效率。

【免费下载链接】JsRpc 远程调用(rpc)浏览器方法,免去抠代码补环境 【免费下载链接】JsRpc 项目地址: https://gitcode.com/gh_mirrors/js/JsRpc

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值