タグ

関連タグで絞り込む (293)

タグの絞り込みを解除

JSONに関するraimon49のブックマーク (299)

  • GitHub - jpmens/jo: JSON output from a shell

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - jpmens/jo: JSON output from a shell
  • 新しい curl コマンドの使い方 完全ガイド(2025年版) - Qiita

    はじめに curl とは対話シェルやシェルスクリプトから HTTP 通信を行うのによく使われるコマンドです。あらゆる環境(100 種類の OS)で動作し、macOSWindows には標準でインストールされています。商用サポートもあり、互換性は非常に重視され、何年経っても同じ書き方で動きます。非常に長く使われており(1998 年生まれの 27 歳1)、そして古い情報もたくさんあります。この記事ではそういった古い情報を、より簡単で新しい curl コマンドの使い方にアップデートします。最初に結論を書いておくと、 もう -X POST -H "Content-Type: applicatoin/json" なんて書かなくていいですよ。 (記事を読まない人のためのリンク) この記事を書くにあたって以下の記事を参考にしています。この記事が書かれたのは 2015 年、現在はそれから 10 年後

    新しい curl コマンドの使い方 完全ガイド(2025年版) - Qiita
  • 初心者向けJWT講座:JSON Web Tokenを使った認証の仕組み

    JWTって何? JWTはJSON Web Tokenの略です。 まずは完成されたJWTを見てみましょう。 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c この文字列がJWTです。 JWTの特徴を見てみる よく見ると、この文字列は 「.」(ドット) で区切られています。 JWTは次の3つのパーツから構成されています。 ヘッダ(Header) ペイロード(Payload) 署名(Signature) ただの文字列じゃない? JWTは単なる文字列ではありません。 実は、この「ヘッダ」や「ペイロード」をデコードすると、JSON形式のデータ

    初心者向けJWT講座:JSON Web Tokenを使った認証の仕組み
  • 新しい機能を作るときにやった方がいいこと

    新しくウェブ系のシステムを開発するときにやったことがいいことを書いておきます。コードを書くスキルとはちょっと別なのでこういうのは経験がないと身につかないけど超重要です。 1. システム構成図を描く どんなシステムがあってどんな流れで処理が進むのかを絵に描く。かっちょいい設計書じゃなくてもいい。手書きの雑なやつでもいい。一個一個の処理に「〇〇君」のような名前を付けていくといい。「JSON書き出し君」みたいな感じ。 2. 誰が何をやるかを明確に タスクを洗い出すだけではなく、誰がどこまでやるかを明確にする。1で描いた絵に担当をアサインしていくと漏れがない。 3. リリース日を決める リリース日を決めずに開発を始めるとパリッとしない。リリース日を決めて、アプリの申請、 QA の予定などを埋めていくと、何日までに開発を終わらせておかなければならないかが逆算的にわかる。間に合わなそうであればリリース

    新しい機能を作るときにやった方がいいこと
  • Android 14 (Credential Manager) におけるパスキー対応が面倒すぎる

    Life with Web Browser Engine (Gecko, WebKit and etc), Mobile and etc. DroidKaigiにココらへんの話をしようと思って、CfP書いたけど落ちたので、自分用の覚書。 Firefox (GeckoView) AndroidCredentail Managerの対応を入れたのが、GeckoViewとしてはバイナリサイズを大きくしたくないため、JetPackを一切使わずにCredential Manager経由でWebAuthn対応を行うコードをJavaでスクラッチで書いた。おそらくJavaでスクラッチで書いたのはChromeとGeckoViewだけだし、おそらくこの2つの製品以外でスクラッチ実装がされることは今後もないと思う。 しかもGeckoViewはWebブラウザエンジンなわけだから、いろんなWebサイトで実行可能な

  • The massive bug at the heart of the npm ecosystem

    Disclosure: I was the Staff Engineering Manager for the npm CLI team between July 2019 & December 2022. I was a part of the GitHub acquistion of npm inc. in 2020. I left GitHub, for various reasons, in December.tldr;a npm package's manifest is published independently from its tarballmanifests are never fully validated against the tarball's contentsthe ecosystem has broadly assumed the contents of

    The massive bug at the heart of the npm ecosystem
  • 構造化ログのフォーマット logfmt vs JSON lines - methaneのブログ

    構造化ログのプラクティスをあちこちで調べていたら、logfmtを推奨する記事を見つけたので調べてみました。 先に結論を言うと、JSON linesを使っておくのが良さそうです。 logfmt について logfmtとはスペース区切りで key=value を並べたフォーマットです。文字列にはクォートとエスケープによってスペースや改行を含められます。 at=info method=GET path=/ host=mutelight.org fwd="124.133.52.161" dyno=web.2 connect=4ms service=8ms status=200 bytes=1653 (logfmt から引用) あちこちで logfmt のリファレンスとして紹介されているのはこの記事です。 https://brandur.org/logfmt 発明されたのはどこか分かりませんが、流行

    構造化ログのフォーマット logfmt vs JSON lines - methaneのブログ
  • 基本から理解するJWTとJWT認証の仕組み | 豆蔵デベロッパーサイト

    これは、豆蔵デベロッパーサイトアドベントカレンダー2022第8日目の記事です。 JSON Web Token(JWT)の単語を目にすることがよくあると思いますが、それと一緒に認証と認可や、RSAの署名や暗号化、そしてOpenIDConnectやOAuth2.0までと難しそうな用語とセットで説明されることも多いため、JWTって難しいなぁと思われがちです。しかし、JWT自体はシンプルで分かりやすいものです。そこで今回は素のJWTの説明からJWS、そしてJWT(JWS)を使った認証を段階的に説明していきます。 おな、この記事はJWT全体の仕組みや使い方の理解を目的としているため、以下の説明は行いません。 RSAやHMACなど暗号化やアルゴリズムの細かい説明 JWTを暗号化するJWEとJSONの暗号鍵表現のJWKについて OpenIDConnectとOAuth2.0について 記事は上記のような内容

    基本から理解するJWTとJWT認証の仕組み | 豆蔵デベロッパーサイト
  • Pkl :: Pkl Docs

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>name</key> <string>Swallow</string> <key>job</key> <dict> <key>title</key> <string>Sr. Nest Maker</string> <key>company</key> <string>Nests R Us</string> <key>yearsOfExperience</key> <integer>2</integer> </dict> </dict> </pl

  • GoCLIツール職人のためのRust入門

    三連休中にこんなツールを作った。 普段はGoでCLIツールを書いているけど、このツールで初めてRust格的に使ったのでその際に得た知見を元にGoでCLIを作っている人向けにとりあえずRustでツールが作れる状態になれることを目指して、CLIツールを作るときによく使っている処理やRustならではの構文などを中心に書いてみた。 この記事を通して「なぁ~んだ。案外Rustでもサクッとツール作れそうじゃん」とか「Rustにも意外とツール向けのライブラリとかあるんだなぁ」とか思って貰えると嬉しい限り。

    GoCLIツール職人のためのRust入門
  • 「YAMLの本来の使い方」を仕様から読み取ってみる | Wantedly Engineer Blog

    YAMLは「便利なJSON」として使われることが多い一方、その複雑性から落とし穴も多く、しばしば批判の対象になります。 なぜYAMLはそこまで複雑なのでしょうか? その背景のひとつは、来のYAMLがJSONとは大きく異なる目的意識で作られているからです。 稿ではYAML specに従う形でYAMLのコンセプトを解説することを目指します。残念ながら、ここに書かれているYAMLの思想は実際には実用されているとは言い難いですし、これらの背景を理解しても「YAMLは複雑だ」という事実がひっくり返ることはないでしょう。それでも、YAMLの複雑さの源泉を体系的に理解し、YAMLとほどほどの距離感で付き合う助けにはなるのではないかと思います。 この記事ではこういう話をしますYAMLはJSONとは独立に、異なる目的で生まれた野心的な仕様であるアンカーやタグなどの強力な構文は、これらの目的を満たすために

    「YAMLの本来の使い方」を仕様から読み取ってみる | Wantedly Engineer Blog
  • JSONとBigInt

    ちょっと前にblueskyで見かけた話題。もとは「GraphQLのスキーマではintが32ビットしかなくて、64ビット整数とかないのがイケてない」といった話だったかなと思う。直感的にはこれは「Javascriptではすべてが倍精度浮動小数点数だから64bit intがないから」ということになるが、よくよく調べてみるといろいろややこしい歴史的事情があるようだ。 たしかにJSにはもともとひとつのNumber型しかなく、いわゆるdouble型(倍精度浮動小数点)だけで数値を表現してきた。IEEE754の倍精度浮動小数点数は仮数部が52ビットあるので、実際には32ビット整数ていどであれば全て誤差なく表現できる。なので32ビット整数または倍精度浮動小数点数がどちらも使えるというふうに理解されてきた。 そうはいっても不便なので、現代のJSにはBigIntがある。ES2020で導入されたらしい。ただし普

    JSONとBigInt
  • 🪵 Go1.21 log/slogパッケージ超入門

    はじめに 2023年8月9日(日の場合)Go1.21がリリースされました🎉。Go1.21ではさまざまな変更点や追加機能が加わります。その中でもGo標準ライブラリに導入される構造化ロギングパッケージlog/slog(以下、slog)を楽しみにしている方は多いのではないでしょうか? 稿では、slogを実際に触りつつ、機能の解説をしていきます。 TL;DR 稿の概要をスライドにもまとめているので、ご参考にして下さい。 従来のlogパッケージについて slogの説明に入る前に、Go標準のlogパッケージについて簡単に紹介する。logパッケージを用いると、 io.Writer インターフェースを実装する任意の型にログメッセージを書き込むことができる。しかし以下のような制限があった。 ログレベルをサポートしていない ログレベルはほとんどのログパッケージの定番機能の一つだが、logパッケージには

    🪵 Go1.21 log/slogパッケージ超入門
  • メールサーバーへの接続をPOPやIMAPではなく現代風に改善しSMTPも設定不要になるプロトコル「JMAP」、高速に同期可能でスマホの通信量も減らせて効率的

    メールサーバーとクライアントとのやりとりに利用されるプロトコルとしてはPOPとIMAPの2種類が広く利用されています。しかし、POPは主な仕様が2000年前後に策定されたままで、同期などの現代的な需要を満たすのが難しく、またIMAPは実装が特殊で新たな開発者にとって扱いづらいという問題がありました。そうした問題を解決するために策定されたのが「JMAP(JSON Meta Application Protocol)」です。JMAPのコアとなる仕様やメール用JMAPの仕様は2019年に策定が完了しており、すでにJMAPに対応済みのクライアントも登場しています。 JSON Meta Application Protocol Specification (JMAP) https://jmap.io/ JMAPは1999年からメールサービスを提供してきたFastmailのチーム主体で進められているプ

    メールサーバーへの接続をPOPやIMAPではなく現代風に改善しSMTPも設定不要になるプロトコル「JMAP」、高速に同期可能でスマホの通信量も減らせて効率的
    raimon49
    raimon49 2023/06/18
    うまいこと単語を組み合わせて「JPOP」って名前で策定して欲しかった
  • jq が jqlang organization に移譲されました - プログラムモグモグ

    JSONを操作するコマンドラインツールであるjqは、これまでオリジナル作者であるStephen Dolan氏 (@stedolan)のリポジトリ(github.com/stedolan/jq)で管理されていました。 メンテナンスはNico Williams氏 (@nicowilliams)とWilliam Langford氏 (@wtlangford)の二名が行なっていましたが、近年は活動が減っておりメンテナンスが滞っていることが度々指摘されていました。 最新のリリースは2018年11月に行われた1.6であり、その後に様々なバグ修正やパフォーマンス改善、新機能の実装が行われているのにリリースされておらず、またissueやPRも放置されがちになっていました。 さらにCI (AppVeyor)は常に落ちるので、簡単なドキュメント修正でもCIが通らず苦情が来る、数か月放置されたPRは作った人が諦

    jq が jqlang organization に移譲されました - プログラムモグモグ
  • GitHub、ソフトウェア部品表の作成機能を無償公開--脆弱性管理を容易に

    印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます ギットハブ・ジャパン(GitHub)は4月7日、クラウド上のリポジトリーからソフトウェアを構成するコンポーネントやライブラリーなどの状況を開発者が容易に把握、管理できる「ソフトウェア部品表」(SBOM)の作成機能「Export SBOM」を発表した。GitHubの全てのクラウドリポジトリーで無償利用できる。 SBOMは、企業や組織などで使われるソフトウェアの脆弱(ぜいじゃく)性を悪用したサイバー攻撃が深刻な被害をもたらしていることを踏まえて、2021年5月にJoe Biden米大統領が署名したサイバーセキュリティ対策の強化を目指す大統領令に盛り込まれた。同令では、ソフトウェア開発組織に対し、ソフトウェア製品を構成するコンポーネントやライ

    GitHub、ソフトウェア部品表の作成機能を無償公開--脆弱性管理を容易に
  • npm install と npm ci って結局どう使うの?2023年版 - Mitsuyuki.Shiiba

    うりうりさんの↓のコメントを見て、そういえばnpm ciって見たことあるけどチェックしてないなぁ。というかnpm installも雰囲気で使ってるなぁ。と思ったので、うりうりさんに教えてもらったことを手がかりに、npm installとnpm ciについて調べた。 これ、node_modulesキャッシュしてたり npm install使ってるけど npmのグローバルキャッシュ(~/.npm)をキャッシュした上で npm ciで早くなったりしないんだろうか GitHub Actions上でテストを約3倍早くした話https://t.co/MpmFktGBxU— wreulicke (@wreulicke) March 14, 2023 ちょこっと検索して見てみたところ、新旧情報があって自分が混乱したのと、公式ドキュメントには概要は書かれているものの詳しい内容は書かれていないので(僕が見つけ

    npm install と npm ci って結局どう使うの?2023年版 - Mitsuyuki.Shiiba
    raimon49
    raimon49 2023/03/16
    Clean Installでciなんだ。言われてみれば確かにそのような振る舞いだ。
  • 行政の統計資料のような非構造化データをGPTで構造化データに変換する|mah_lab / 西見 公宏

    今朝方GPT-4が発表されて、みなさん死ぬほど盛り上がってますねー。 GPT-4を使えば一発でできそうなネタではありますが、GPT-4 APIのお値段は3.5よりもお高めの設定なので、これからはどのように上手くGPTのバージョンを使い分けていくかが問われていくと思います。 というわけで今日は非構造化データを構造化データに変換する話です。 問題の背景行政が定期的に公開している統計資料をご覧になったことはありますでしょうか。ディスる訳ではないですが、以下に示すのは私が住んでいる富士吉田市の統計資料です。 統計ふじよしだ令和元年度版 - 商業 このように分かりやすい表で情報を提供してくれるのはありがたいのですが、数値データにはなっていないので分析に活用することができません。 GPTのパワーを使って、このような非構造化データを構造化データに変換できないか?というのが日のお題になります。 コードP

    行政の統計資料のような非構造化データをGPTで構造化データに変換する|mah_lab / 西見 公宏
  • データベースの仕組み(アーキテクチャ)をざっくり理解する

    フリーランスエンジニアをしているrevenue-hackです! 普段はGo言語でバックエンドを中心にやっています〜 ↓登壇したときの資料です! より図を入れて詳しく書いております! 今回はデータベースの特にRDBの仕組み(アーキテクチャ)についてざっくり理解して、なにかに役立てようぜ〜 というような内容になります。 ↓記事はこちらに移しました!↓

    データベースの仕組み(アーキテクチャ)をざっくり理解する
  • 4.0.0 — Homebrew

    Today, I’d like to announce Homebrew 4.0.0. The most significant change since 3.6.0 enables significantly faster Homebrew-maintained tap updates by migrating from Git-cloned taps to JSON downloads. Major changes and deprecations since 3.6.0: Using JSON files downloaded from formulae.brew.sh for package installation rather than local homebrew/core and homebrew/cask taps. Please note: this is the la

    4.0.0 — Homebrew