背景 内部システム向けにWebAPIを作ろうということになったが、一部のメンバーがRESTに嫌気が指していた。曰く、「(完全な)RESTに則るのは費用対効果に合わない。」 彼の発言を拡大解釈した結果、REST以外の思想に乗っ取りAPIを作りたいのだと思いを汲み取り、名前からしてパット見は全くRESTじゃなさそうなJSON-RPCというデータフォーマットの規格について調べた JSONのデータフォーマット JSONそれそのものの規格はRFC 7159で決まっていますが、それに則りその上でどういった要素にデータを格納していくべきかの設計は各人の好みが別れる所。 例えば、下記で言うとメタ情報はheader、データ部はbodyのリスト、リクエストIDはid、時刻はtimestamp、何かしら問題があればerrorといった、どういう名称の要素に、どういったkey-valueで格納するかなど実運用上、決
MySQL 5.7の新機能である生成列はこれに対してインデックスを作成することができ、これにより関数インデックスとして知られる機能が実現できます。 本エントリではJSONドキュメントにインデックスを作成する実例を紹介します。 免責事項 この記事はMorgan Tocker氏によるMySQL Server Blogの投稿「Indexing JSON documents via Virtual Columns」(2016/3/8)をユーザが翻訳したものであり、Oracle公式の文書ではありません。 前回の投稿では、新しく追加されたJSON型および関数をSF OpenDataのサンプルデータを使って試しに動かしてみました。本日は、一歩進んでインデックスを作成する例を紹介しよう思います。 生成列の紹介 MySQL 5.7では、生成列と呼ばれる新機能が追加されています。簡単な例から始めましょう。 C
by Shishir Kakaraddi, Srinivas Raghunathan, Adam Gross and Ryan Johnston We are pleased to announce the open source release of the Fast JSON API gem geared towards Ruby on Rails applications. Introduction Fast JSONAPI is aimed at providing all the major functionality that Active Model Serializer (AMS) provides, along with an emphasis on speed and performance by meeting a benchmark requirement of b
2016年1月5日現在において、JSONを受け取り、返却するWeb APIを書くときに、人が作った規格に乗って楽をしようぜと考えた。 その過程で調べた、JSON Schemaについてメモ書き。間違ってたらツッコミよろ。 概要 JSONの構造を記述する規格。構造の記述そのものもJSONで書かれる。 Draft v4現在では、JSON Schemaは以下の3つの規格の総体を指す。 JSON Schema Core JSON Schema Validation JSON Hyper-Schema そもそも提案された初期のJSON Schemaは、JSON Schema Core+JSON Schema Validationとほぼ同じ領域をカバーしていた。整理・発展の上3仕様に分割された。よって、JSON Schema Core+JSON Schema Validationにあたるものを単にJSO
NEW: get the JWT Handbook for free and learn JWTs in depth! What is JSON Web Token? JSON Web Token (JWT) is an open standard (RFC 7519) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. JWTs can be signed using a secret (with the HMAC algorithm) or a publ
ずいぶん長くかかりましたが[1]、JSON Web Signature (JWS)とJSON Web Token (JWT) がようやく Standard Track の RFC[2]になりました。それぞれ、[RFC7515]と[RFC7519]です。 ご存じない方のために申し上げますと、JWSはJSONにデジタル署名するための規格です。XML署名のJSON版ですね。JSONシリアライゼーションとCompactシリアライゼーションの2種類あり、Compactシリアライゼーションがあります。 JWTは、このCompactシリアライゼーションのJWSに、いくつかの有用なパラメータ名を導入して、ログイン情報やアクセス許可情報を伝達できるようにしたものです。主にRESTfulなシステムでの利用を想定していますが、もちろんそれ以外でも利用可能です。既に、GoogleもMicrosoftも大規模に実装
@novです。 個人的に最近OAuth 2.0よりJWT (というかJWS) を利用するシーンが多く、毎回同じ説明するのもめんどくさいのでブログにまとめるかと思い、どうせならOAuth.jpに書くかということで、こんな記事を書いております。 (そろそろJWTとJWSは、OpenID Foundation Japanの翻訳WGで翻訳するべき?) JSON Web Token (JWT) とは、JSONをトークン化する仕組み。 元々はJSONデータにSignatureをつけたりEncryptionする仕組みとして考えられたものの、Signature部分がJSON Web Signatue (JWS)、Encryption部分がJSON Web Encryption (JWE) という仕様に分割された。 それぞれ2012年10月26日現在の最新仕様はこちら。 (JWTとJWSは既にだいぶ仕様が固
注: 本稿は元はJSON Web Tokens(JWT)について書いたものですが、JWTはJavascript Object Signing and Encryption(JOSE)のサブセットであるため、以下の批評はどちらかというとJOSE全体に焦点を当てています。 もし既にJavascript Object Signing and Encryption(JOSE)を実装することを決めているなら、それがJSON Web Tokens、JSON Web Encryption(JWE)、JSON Web Signatures(JWS)のいずれであっても、その決断に疑問を持つべきです。間違いを犯そうとしている可能性があります。 この投稿に書いたことはすべて、RFC 7519、RFC 7515、そしてRFC 7516に則っています。将来、新規のRFCでは以下に挙げるような欠陥はなくなっている可能
JSONデータ圧縮方式をzstdに切り替えデータ量を38.3%削減した事例、及びマイクロサービスの無停止アップデート事例について紹介したいと思います。 はじめに JPRゲーム事業本部開発基盤部の池田周平です。先日 Rails5対応についてDeNA techブログに投稿 した@namusyakaと同じチームで働いています。 JSON文字列をRDBに格納する際の圧縮フォーマットをSnappyからzstdに切り替え、データ量を削減した事例を紹介したいと思います。本対応を実施した目的はDB負荷対策です。DBで扱うデータをより小さくすることで、DBサーバのDiskI/O負荷とMaster-Slave間のレプリケーション遅延対策を目的としています。 「Sakasho」は、DeNAが持つモバイルゲームのためのプラットフォームです。複数タイトルのゲームを取り扱っており、一部データはゲーム毎の仕様差を吸収し
はじめに 私はCLIを利用することが多いのもあり、 jq は今やJSONを利用する上は欠かせないツールとなっています。 ただ ・ jqのクエリを書くことなれるまで少し時間がかかる ・ クエリを書くことに慣れたとしても、初見だったりして 構造を把握していないJSONに関しては非常に手間 でみたいな感じだなと思っていました。 インタラクティブに jq のクエリを書いていければいいのに、と思ってツールを探しました(CLI限定で)が、あまり良さそうなものが見つかりませんでした。 そこで、Golangで何か作ってみたいのもあったので、作ったのが jid というツールです。 リポジトリ Github : simeji/jid インストール 以下からバイナリダウンロードしてzip解凍するだけです。 https://github.com/simeji/jid/releases Macの場合はbrewで入れ
いい記事に感化されて僕も何か書きたくなった。 GolangでAPI Clientを実装する | SOTA GolangでAPI Clientを実装する 特定のAPIを利用するコマンドラインツールやサービスを書く場合はClientパッケージ(SDKと呼ばれることも多いが本記事ではClientと呼ぶ)を使うこ... http://deeeet.com/writing/2016/11/01/go-api-client/ この先、JSON REST API のエンドポイントに対して Golang の struct を用意していく訳だけど、ここが一番かったるい作業で一番手を抜きたい所だと思います。そこで便利なのが JSON-to-Go です。 JSON-to-Go: Convert JSON to Go instantly JSON-to-Go Convert JSON to Go struct T
AWSのAPI Gatewayを試していたところ、API(API Gatewayの)でJSON Patchなるものを使うことになりました。よくわからんちんでしたが、RFCが出ているということなので読んでみました。以下メモ。 RFC JavaScript Object Notation (JSON) Pointer JavaScript Object Notation (JSON) Patch overview JSON PointerはJSOCドキュメント中の位置を表す仕様。XMLのXPathみたいなもの。 ABNFで書くと json-pointer = *( "/" reference-token ) reference-token = *( unescaped / escaped ) unescaped = %x00-2E / %x30-7D / %x7F-10FFFF つまり%x2F
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く