Nuxt中集成Farcaster / 网络研习社#97
Farcaster是个不错的项目,很早就有留意。心理也一直想要在项目中集成,只是一昧耽搁。现在有时间了,还是要还下技术债。
Farcaster简介
Farcaster 是一个基于以太坊的充分去中心化的社交网络。它使开发人员能够创建创新的社交网络。它是一种开放协议,可以支持多个客户端。它是一种公共社交网络,类似于 Twitter 和 Reddit。用户可以创建个人档案、发布信息并关注他人。他们拥有自己的账户和与其他用户的关系,可以在不同的应用程序之间自由移动。开发人员将始终可以自由地在网络上构建具有新功能的应用程序。
Farcaster架构
Farcaster 将一些数据(如帐户创建)存储在链上,而将其他数据(如 Casts)存储在称为 Hubs 的节点上。
这是一个高层次的视图:
Farcaster使用三个智能合约(部署在 Optimism mainnet 上)来促进链上操作:
- Id Registry - 此 ID 注册合约允许用户注册、转移和恢复帐户。它与 fId 绑定,fId 又与帐户创建期间使用的以太坊地址绑定
- Storage Registry - 存储注册合约跟踪帐户及其存储租金。这与用户创建帐户时支付的租金相同,用于他们在 Farcaster 网络上的交互(例如,Casts、回复)。
- Key Registry - 密钥注册合约跟踪注册到应用程序的密钥。这控制着应用程序是否可以代表用户进行活动(例如,发布、关注)
Nuxt中集成
Farcaster是使用Snapchain来作为数据网络,要自己运行的话还比较麻烦,这里采用第三方服务(免费)--Neynar API
https://docs.neynar.com/docs/getting-started-with-neynar
在neynar中注册个号,得到key这些就可以开始啰!
登录和发帖
- 登录
<template>
<div
class="neynar_signin"
data-client_id="your client key"
data-success-callback="onSignInSuccess"
>
</div>
</template>
<script setup>
useHead({
script: [
{ src: "https://neynarxyz.github.io/siwn/raw/1.2.0/index.js",
async: true,
},
{ src: "/neynar.js"},
]
})
</script>
// neynar.js存在 public目录中
function onSignInSuccess(data) {
console.log("1625, Sign-in success with data:", data)
// 得到了data.signer_uuid这些, 下面是业务逻辑
}
- 发帖
const farcasterCast = async (text) => {
await fetch(
'https://api.neynar.com/v2/farcaster/cast/',
{
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
'x-api-key': 'your api key',
},
method: "POST",
body: JSON.stringify({
signer_uuid: signer_uuid, //登陆中得到的signer_uuid
text: text
})
}
)
}
到了这步,基本就大功告成了,帖子可以迅速发布到Farcaster网络上!
至于后面的功能大家可以参考相关文档集成。从登录和发帖中可以看到集成并不算困难,只是有些概念比较难理解,要通读的话可能要费一番功夫。
Leave Nuxt中集成Farcaster / 网络研习社#97 to:
Read more #cn posts
Best Posts From lemooljiang
We have not curated any of lemooljiang's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.
More Posts From lemooljiang
- 炒股投资要从娃娃抓起之特朗普账户
- Nextjs初体验,和Nuxt的异同
- DeepTutor:AI个性化辅导平台 / ai #57
- ComfyUI:可编程和自动化的PS / ai #56
- 将Neo4j封装进Agent / ai #55
- 闲鱼省钱大法:极限0.5折!
- 对Neo4j批量导入结构化数据 / ai #54
- langchain对neo4j进行交互,写入和查询数据 / ai #53
- 知识图谱和图数据库Neo4j的作用和使用场景 / ai #52
- SpaceX、美股和比特币
- 又是币圈血洗日!
- 链股合流,当币安也开始卖股票啰
- 天涯社区重启,爷青回?
- 诺基亚在AI时代重新杀回来啦
- 《2049:未来10000天的可能》书中的镜像世界为什么不叫元宇宙
- 今天适合吃披萨
- 开通即被封,别再给Claude送人头了!
- 两根内存条引发的“官司”
- AI·Joe V12更新, 更新GPT-5.5和DeepSeek V4 等
- 中医进校园活动反响热烈