Thrift架构 本地域的C2S解决方案

瑞星  金牌会员 | 2024-8-10 17:30:57 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 533|帖子 533|积分 1599

Ti-Thrift



  • 基于thrift实现前端htmlJs与后端nodeJs之间的兼容本地域解决方案
  • Example of a compatible local domain solution between frontend htmlJs and backend nodeJs based on Thrift
Thrift

你可以使用thrift库来实现在前端使用Thrift协议与后端的Node.js进行通讯的解决方案。
Thrift是一种跨语言的服务界说和通讯协议,它答应你界说数据类型和服务接口,并天生相应语言的代码。在你的情况下,你可以使用Thrift来界说前后端之间的数据类型和接口,并天生对应的JavaScript代码。
在前端,你可以使用ti-thrift库来处理Thrift协议的通讯。它提供了一些工具和函数,可以资助你在前端使用Thrift协议与后端进行通讯。
在后端,你可以使用Node.js的thrift库来处理Thrift协议的通讯。它提供了一些函数和类,可以资助你在Node.js中实现Thrift服务端。
通过使用ti-thrift和Node.js的thrift库,你可以实现前后端之间基于Thrift协议的通讯,并在本地域中进行数据交互。
环境



  • install node 16.0.0
  • npm install thrift
协议文件编译

实行包



  • download thrift http://www.apache.org/dyn/closer.cgi?path=/thrift/0.20.0/thrift-0.20.0.exe
  • thrift-0.20.0.exe -> thrift.exe
协议文件



  • https://github.com/apache/thrift/blob/master/tutorial/tutorial.thrift
  • https://github.com/apache/thrift/blob/master/tutorial/shared.thrift
Node端 编译下令



  • npm run nodeClientThrift
JS端 编译下令



  • nodeHtmlThrift
NODE-NODE

启动 后端服务



  • node nodeClientServer.js
启动 前端服务



  • node nodeClient.js
HTML-NODE

启动 后端服务



  • node nodeHtmlServer.js
启动 前端服务



  • node nodeHtml.js
涉及的文件



  • json_protocol.js
  • framed_transport.js
  • thrift.js
Thrift JS

Version: '0.21.0'

https://github.com/apache/thrift/blob/master/lib/js/src/thrift.js
指令



  • thrift -r --gen js:node -protocol json -transport xhr tutorial.thrift
这些参数的含义如下:



  • -r: 表示递归处理,可以天生依靠的所有文件。
  • --gen js:node: 指定天生的语言为 JavaScript,使用 Node.js 环境。
  • -protocol json: 指定使用 JSON 协议进行数据传输。
  • -transport xhr: 指定使用 XMLHttpRequest (XHR) 进行数据传输,适用于浏览器环境。
  • 因此,运行此下令将根据提供的 tutorial.thrift 文件天生适用于 Node.js 环境的 JavaScript 文件,其中包含使用 JSON 协议和 XMLHttpRequest 进行数据传输的客户端和服务器端代码。
注意

-protocol json -transport xhr 不能作为参数, 但可以在thrift主文件 文件头加上
  1. /*
  2. * protocol: json
  3. * transport: xhr
  4. */
复制代码
github.com/Timtance
gitee.com/Timtance
 

 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

瑞星

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表