從0到1基于metaID開發的搜索功能應用
專案展示地址:https://www.metaspotlight.com
首先感謝國內showpay團隊的全程配合與支持,在showpay團隊的促使下,完成了本人第一個基于metaID開發的應用,藉著這篇文章分享,我想在不久的未來,定會有更多團隊或者個人開發者參與到基于metaID開發的隊伍中,今天在這里記錄一下自己開發的程序!
1. 為什么要選擇基于metaID上開發?
初次接觸metaID的伙伴多少會有困惑什么是基于metaID開發,有別于傳統開發模式,目前傳統的前后端開發專案,前端開發者主要負責還原設計稿UI部分,然后配合后端開發人員調取API介面獲取資料進行頁面渲染,處理業務邏輯問題等等,
基于metaID開發在實際程序中并沒有資料庫的概念,metaID的資料從哪兒來?通俗點決議資料都來自“鏈上”,用戶的每一個基于協議的操作,都會產生上鏈行為,上鏈后的資料將永久保存在區塊鏈上,這樣子就解釋了資料來源,有別于傳統API,基于metaID開發我們可以通過一個個’protocols(協議)'來獲取我們想要的資料源,當然,基于metaID開發肯定不止這個點,既然用戶行為可以上鏈,那開發者也是用戶,我們可以組建自己的協議,通過‘協議廣場’也可以在鏈上分享自己的協議,通俗點說我們完全可以通過自己組合協議來實作區塊鏈上資料的靈活組合呼叫,
2. 基于metaID實作即發布即收益

metaID應用生態的電子錢包記錄你的個人賬本,每個用戶可以通過別人“點贊”,“分享”,“轉發”產生收益,
3. 基于metaID開發一個應用周期會不會很長?
基于以下的開發流程,正常開發周期是1-2周
這就是基于metaID開發第三大優勢,開發效率高,我們不需要再把大量時間花在與后端聯調介面上和部署專案上,所有欄位都可以通過協議廣場https://www.metaprotocols.com/的協議進行查詢,然后通過showmanDBhttps://showman.showpay.io/#153042ed9e去查詢呼叫你專案中需要使用到的API介面,介面規范也是大家日常接觸的restful設計,前端入門小白或者作業經驗較淺的前端人員都可以0門檻基于metaID開發,舉個例子:我需要查詢"SimpleMicroblog"簡單微博協議的的內容‘content這個欄位’,axios請求的url為:‘/showMANDB/api/v1/query/queryFindMetaData/(+base64編碼后的查詢陳述句)’,我們可以封裝一個方法把協議名‘SimpleMicroblog’作為第一個引數傳入,把查詢的欄位‘content’作為第二個引數傳入,最后回傳整個promise(其中axios的url為/showMANDB/api/v1/query/queryFindMetaData/,data為query陳述句)
圖一是請求引數
圖二是經過base64解碼后的結果

新接觸開發者可能最大的疑問是我查詢了SimpleMicroblog協議之后,我想通過SimpleMicroblog回傳的引數獲取到用戶的頭像,metaID,昵稱等等資訊,應當如何操作?
每一個協議請求發起都會給我們回傳如下資訊:

我們可以通過rootTxid呼叫showmanDB的API=>/apis/showMANDB/api/v1/query/getMetaIDInfo/+(rootTxid)把rootTxid拼接上去,即為查詢metaID上的資訊
備注:值得注意的是,查詢協議回傳的欄位中的encrypt為加密的標識,而metanote協議中的isPrivate表示該協議內發布的內容為文章擁有者設定僅自己可見(同為已加密資訊),所以我們在查詢程序中應該避免把加密的資訊也一并查詢出來,否則會在前端渲染成一堆亂碼,
4. 我還是聽的有點迷惑,怎么辦?
我們嘗試把BSV網路看成一個超級網路,可以承載全球70億人使用的互聯網,我們日常接觸最多的windows系統,上面的每一個.txt檔案,.jpg檔案等等,都需要一個打開該型別檔案的程式,而基于metaID開發的應用就是一個系統,里面的每一個子應用就是一個帶后綴的檔案型別,我們每個子應用實際上都有一個默認的打開方式,我們也可以選擇其他方式去打開這個應用,如metaspotlight中的查看Tx,其實就是一個拼接url的操作,我們把該條鏈上資料請求回來的txid拼接到url上,就實作了一個查看Tx的功能了,同理,我們通過showmanDB可以實作對資料聚合查詢操作(類似mongoDB查詢),然而我們并不需要真的去安裝mongoDB,然后建立資料庫,創建集合等等,只需要創建函式去組合自己想要的查詢陳述句即可實作對資料的二次加工操作,(有serverless開發經歷的朋友應該感同身受),
5. 怎樣起手從0-1開發一個基于metaID的應用,
如果你是一個前端框架的開發者,您可以使用您熟悉的框架內進行專案創建,showpay團隊已經有現成的登錄注冊模塊,您只需要在以下鏈接https://www.showmoney.app/的開發者平臺上創建您的應用)
生產環境創建應用

注意:APP_URL代表你應用的域名,Redirect URL代表第三方應用跳轉需要重定向到您應用的域名下,而APP URL,Redirect URL,Client Id,OAuth Secret這四個變數都需要分別對應配置到你專案的環境變數中,
這樣我們就完成了第一步準備作業,接著我們就可以基于metaID進行開發了,專案開發完畢之后需要打包部署到正式服的時候,https://api.showmoney.app是支持跨域的,如圖
因應每個專案的需求不同,如果你已經對metaID開發應用產生想法并且想踐行第一個基于metaID開發的應用,您可以聯系showpay團隊或者本人,
聯系方式:
電子郵箱:172674108@qq.com(qq:172674108)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/244731.html
標籤:區塊鏈
