タグ

jsonとapiに関するf99aqのブックマーク (5)

  • grpc-gateway と使われてるProtocolBuffer周辺技術メモ - はこべにっき ♨

    grpc-gatewayはHTTP2+ProtocolBuffer をプロトコルに用いるgRPCのサービスを、HTTP/1.1のRESTfulな JSON APIとして利用できるようにするリバースプロキシを生成してくれるツールだ。 厳密にはProtocolBuffersを処理するコマンドであるprotocのプラグインとして動作し、protocに読み込んだgRPCのサービス定義をもとにGoで記述されたコードを生成する。生成されたコードはHTTPサーバのハンドラになっていて、net/httpに登録して使えるようになっている。 ハンドラはHTTP/1.1でリクエストを受け取ると、リクエストに含まれるJSONを対応するProtocolBufferのメッセージに変換し、プロキシ先のgRPCサービスのメソッドを呼び出す。このgRPCサービスは、元にしたスキーマが同じであればGo以外の言語で実装されてい

    grpc-gateway と使われてるProtocolBuffer周辺技術メモ - はこべにっき ♨
  • Web APIにはJSONベースのフォーマットを使おう - Qiita

    { "response": { "id": 3342124, "message": "Hi!", "user": { "id": 3456, "name": "Taro Yamada", "image_url": "/images/taro.png" } } } など、どの構造がいいでしょうか? もっと違う構造も考えられます。 JSONはシンプルですが、構造に制約がなさすぎます。適切な設計を行うには適切な制約が必要です。 そこで、plain JSONに少し制約を加えたJSONベースのフォーマットを使うことをおすすめします。 もしあなたが、JSONレスポンスをどのようなフォーマットにするかをチームで議論したことがあるなら、JSON APIは『自転車置き場の議論』に対抗する武器となる。 共有された規約に従うことで、生産性が向上し、汎用的なツールを利用でき、アプリケーションという重要なものに集中

    Web APIにはJSONベースのフォーマットを使おう - Qiita
    f99aq
    f99aq 2015/12/20
  • 全てがJSONになる - ✘╹◡╹✘

    TL;DR JSON Schemaを使ってこういうことが実現可能になった。 ダミーAPIサーバの提供 ドキュメントの自動生成 APIクライアントの動的定義 APIサーバのバリデータの動的定義 APIサーバのレスポンスの自動テスト JSON Schemaとは JSON SchemaというのはあるJSONのデータ構造を記述するための方法および書式の仕様で、 JSON SchemaもJSONで記述される。 これを利用すれば、リソースベースの(=RESTfulライクな)APIの仕様が簡便に記述できる。 例えば、我々のAPIレシピとユーザというリソースを扱っていて、 それぞれCRUDのAPIを備えており、レシピはidとtitleとdescriptionという属性を持つ、 という旨をJSON Schemaで表現できる。 なんで最近ちょっと流行ってんの Mobile First、 Service Or

    全てがJSONになる - ✘╹◡╹✘
  • はてなのお気に入りユーザーの情報を取得できる「お気に入りAPI」(Favorites API)を公開しました - はてなダイアリー日記

    日、はてな内のお気に入りのユーザー情報を取得できる「お気に入りAPI」(Favorites API)を公開しました。 以下のURLにアクセスすると、JSON形式でお気に入りユーザーの名前の一覧を取得することができます。 http://www.hatena.ne.jp/ユーザー名/favorites.json お気に入りユーザーとは、はてなアンテナで日記を購読していたり、1ヶ月内に☆をつけたりしたことがあるなど、はてなの各サービスでの活動から相手に対して何らかの行動を行っているユーザーのことを指します。 はてなのお気に入りAPIは、以下の情報を集約して情報を集約して配信しています。個別のサービスからのみお気に入りの情報を取得することも可能です。 はてなダイアリー 最近はてなダイアリーにトラックバックを飛ばしたり、コメントを書き込んだ相手のユーザー http://d.hatena.ne.jp

    はてなのお気に入りユーザーの情報を取得できる「お気に入りAPI」(Favorites API)を公開しました - はてなダイアリー日記
  • livedoor clip jsonp api sample

    <h2><a href="http://clip.livedoor.com/clips/[[livedoor_id]]">[[ livedoor_id ]]</a></h2> <ul>[[#{ clips.map(Template.get("tmpl_list").compile()).join("") }]]</ul> <li><a href="[[link]]">[[title]]</a> <br><small><a href="http://clip.livedoor.com/page/[[link]]">[[public_clip_count]]user</a> | [[#{ tmp=now-created_on, ((tmp<7200)?'<span class="recent">':"")+(tmp).toRelativeDate()+((tmp<3600)?'</span>'

  • 1