Cloudflare のローカル開発コマンドである wrangler を、複数同時に turborepo などで動かすと、タイトル通りのエラーが発生することがあります。 ✘ [ERROR] Address already in use (127.0.0.1:9229). Please check that you are not already running a ser…
以前の記事で、 Vercel から OpenTelemetry のトレースを Mackerel へ送信した記事を書きました。 tech.natsuneko.blog 今回は、プラットフォームを変え Cloudflare Workers から Mackerel へ OpenTelemetry のトレースを送ってみようと思います。 まず、 Cl…
Cloudflare Workers で GraphQL バックエンドを構築する際、最初はサンプルなどから簡単に始められますが、実際の開発では「スキーマをコード内に書きたくない」「型安全性が欲しい」といった課題に直面します。 この記事では、Cloudflare Workers の制約の…
ハマったのでメモしておく。 更新日時は sys.publishedAt、公開日時は sys.firstPublishedAt を使う。 どちらも DateTime が返される。 query SomeQuery { articleCollection(limit: 1) { items { sys { id " このプロパティを使う!" publishedAt firstPubl…
みなさん Roslyn いじってますか? Roslyn(正式名称:.NET Compiler Platform)は、C# をはじめとする .NET 系言語のコンパイラであり、同時に強力なコード解析 API でもあります。JavaScript/TypeScript エコシステムでいえば、ESLint や Prettier のよう…
みなさん、HonoX はお使いでしょうか? HonoX は、手軽に SSR(Server-Side Rendering)や Island Architecture を試せる優秀なパッケージです。シンプルな API で現代的な Web アプリケーションを構築できるのが魅力ですね。 Next.js の getStaticPaths と…
ASP.NET Core 版の WebSocket 実装である SignalR では、 C# 側で実装したメソッドを、 JavaScript フロントエンドから呼び出すことができます。 その際、例えばバイナリの Base64 String を送るなどでパラメータサイズが 32KB を超える場合、以下のようなエ…
前回の記事では、Cloudflare Workers で EXIF/XMP データを取得する方法について解説しました。 tech.natsuneko.blog 今回は PNG ファイルに焦点を当て、iTXt チャンクに埋め込まれたメタデータを取得する方法を紹介します。 まず、 PNG ファイルには任意の…
例えばサーバーレスな環境で、非同期的に画像のメタデータを取得してごにょごにょしたいこと、ありませんか?わたしはあります。 今回は、Cloudflare Workers を使って、画像のメタデータを取得してみようと思います。 まず最初に思いつくのが、Node.js 用画…
hanko.io という ID プロバイダーがある。 Passkey ネイティブ対応で、 Passkey の他に SNS アカウントでの認証 (X はない)、 OTP での認証など様々な認証形式をサポートしている。比較的最近 MFA にも対応していた。 そんな Hanko だが、 Hanko による認証…