herohoroブログ

VercelのCORS許可をしてNostrでDamusの認証バッチをGetしよう



🔄   2023-03-14

元ツイッターCEOのジャック・ドーシー氏が出資したことで知名度の上がったNostrについて、

最近 iOS クライアントDamusが公開され、一部で話題になっているんだそうです。

2月1日にAppleのアプリストアでリリースされたばかり。

Nostr:プロトコル

Damus:アプリ

できること:テキストのみ

昔のTwitterだ\(^o^)/

アカウント取得やプロフィール作成は簡単にできるのですが、

ユーザーネームの横に無料でバッチを付けられるという部分に惹かれたので

やってみることにしました\(^o^)/

ざっくり概要

流れはこのページにあります⭐

image block

https://gist.github.com/metasikander/609a538e6a03b2f67e5c8de625baed3e#prerequisite

読んでみると結構めんどくさそうです。

image block

https://gist.github.com/metasikander/609a538e6a03b2f67e5c8de625baed3e#prerequisite

わたしの持っているドメインは「herohoro.com」

それを使ってサーバーを作る。

みんな大好きVSCodeも開きます\(^o^)/ワーイ

サーバーにファイルを作る

image block

やること:

  1. ファイルを作る
  2. 公開キーをHEX形式に変換する

ファイルを作る

herohoro.com/ ****

このパターンは….appディレクトリ内のファイル構造と同じ。

だけどapiディレクトリもあるんだよね….. 🤔

サーバーだからapiって感じかな♪

pages/apiディレクトリ内に.well-knownディレクトリを作ってnostr.jsonを入れればいい….はず。

image block

👇

image block

<name>は好きな名前にしていいみたいだから…horomiにしちゃう\(^o^)/

image block

公開キーをHEXに変換

<pubkey> にはHEX形式にした文字列を入れる。

専用サイト発見👀

image block

https://damus.io/key/

image block

<pubkey> に貼り付けよう\(^o^)/

image block

CORSを許可する

ちゃんと言うと、「Cross-Origin Resource Sharing」

image block

Webサーバーとは

Vercelかと思って調べてみると

Vercel = CI/CD + Webサーバー

Vercelが使ってるWebサーバーは何??

意味分からなくなってきたので

検索の仕方を変えました。

🔎
Vercel CORS permissions

Vercel公式ドキュメントにあった〜〜〜〜

image block

https://vercel.com/guides/how-to-enable-cors

設定の仕方が3つ

  • Node.jsでServerless functionを作る
  • next.config.jsでheaders functionを作る
  • vercel.jsonでheaders keyを作る

vercel.jsonで許可

混じってしまうと混乱しそうだなと思ったので

別ファイルで用意できるvercel.json 作戦を取ることにしました。

image block

サンプルコードのsourceの値

headers内のkeyは要調整。

image block

commitしてから次の設定に入ります\(^o^)/


助かった記事:


DamusアプリでNIP-05を認証

image block

@マークの前はnostr.jsonで記入したname

image block

@マークの後は自分のドメイン(私の場合はherohoro.com)

これでいけるはず…..

おわりに

設定後ちょっと時間がかかるのか、

すぐにはバッチは表示されませんでした。

ちょっとドキドキするけど

待つしかないので

違うことをしてDamusの反映を待つことにします(灬º 艸º灬)

こちらの解説記事を手がかりに頑張りましたっ(*´ω`*)(*´ω`*)


Xではたま〜にする更新のお知らせを行っています

興味ある方はLet'sフォロー★

▼ この記事に興味があったら同じタグから関連記事をのぞいてみてね

Buy Me A Coffee

新着記事を通知したい??


RSSリーダーにatomのリンクを登録すると通知が行くよ🐌

https://herohoro.com/atom

やってみてね(*´ω`*)(*´ω`*)

Twitter Timeline


フォロー大歓迎\(^o^)/