タグ

WebAPIに関するnoazohのブックマーク (17)

  • https://lib-repos.fun.ac.jp/dspace/bitstream/10445/6689/1/4B-1.pdf

    noazoh
    noazoh 2015/03/27
    WebAPI設計パターンの提案と既存Webサービスの分析
  • 拡張可能なWeb APIの設計原則と、バージョン番号を使う理由について

    APIのバージョニングは限局分岐でやるのが良い - Hidden in Plain Sightにはブコメしたのですが、Rebuild: 35: You Don't Need API Version 2 (Kenn Ejima)でも件に言及があったようなので、少し一般論を書いておきたいと思います。 ■Web APIの設計原則について そもそも、良いAPIとはどのような特性をもつものでしょうか? 一般的に、以下の2点が挙げられると思います。 拡張が容易である 拡張時に後方互換性を破壊しない ウェブの場合は、これに加え、 スケーラブルである HTTPに起因する問題に上手に対処できる ことが求められます。 前2者はウェブに限らない要件です。これを満たす設計手法としては、 リクエストおよびレスポンスのパラメータを拡張可能に 互換性を壊す拡張が必要な場合は、関数名を変える 古い関数は従来と同じ機能を

  • Web API 設計のベストプラクティス集 "Web API Design - Crafting Interfaces that Developers Love" - フリーフォーム フリークアウト

    移転しました http://please-sleep.cou929.nu/20130121.html

    Web API 設計のベストプラクティス集 "Web API Design - Crafting Interfaces that Developers Love" - フリーフォーム フリークアウト
    noazoh
    noazoh 2015/03/13
    WebAPI開発の原則論。シンプルでよい。
  • I am mitsuruog | JWT(Json Web Token)を利用したWebAPIでのCredentialの受け渡しについて

    AngularJS への改宗が完了した「mitsuruog」です。 AngularJS に限らず Single page application(以下、SPA)を構築した場合、認証(Authenticate)とその後の WebAPI での証明情報(Credential)の受け渡し方法について最近悩んでいます。 調べていたら Json Web Token(以下、JWT)を利用した方法がCookies vs Tokens. Getting auth right with Angular.JSで紹介されていて、試してみると結構使えそうでしたので紹介してみます。 目次 1.WebAPI での証明情報の受け渡しの重要性 2.Token を利用した証明情報の受け渡し 3.実現するためのコア技術、JWT(Json Web Token)とは 4.Token を利用した場合の課題など 秘密鍵の管理 リフレッ

    I am mitsuruog | JWT(Json Web Token)を利用したWebAPIでのCredentialの受け渡しについて
  • iOSで自作WebAPIにアクセスする - おかひろの雑記

    社内業務システムのWebAPI実装を考えてみる - おかひろの雑記で作成したような自作WebAPIに、Objective-Cからアクセスするプログラムを作成してみました。 レスポンスはJSONのみ対応とします。 Objective-CからのHTTP接続についてはこのでもちょこっと紹介されていますが、 エキスパートObjective-Cプログラミング ?iOS/OS Xのメモリ管理とマルチスレッド? 作者: 坂一樹出版社/メーカー: インプレス発売日: 2011/11/18メディア: 単行(ソフトカバー)購入: 8人 クリック: 343回この商品を含むブログ (25件) を見るレスポンスをBlocksで処理できるようになっていると便利そうです。 "AsyncURLConnection"で検索するとそれっぽいライブラリがいくつかヒットしますが、今回はこれを使ってみました。 ASyncUR

    iOSで自作WebAPIにアクセスする - おかひろの雑記
  • Web APIを作るときに考えること。 - パルカワ2

    この記事はPepabo Advent Calendar 2014の11日目の記事です。 前日は、tnmtさんのVagrantのshell provisionerでApacheのビルド済tarボールをOSバージョン毎に作る術でした。 はじめに 今回は、Web APIを作るときに考えることをまとめました。 当は、社内向けに資料を作っていて、社内の勉強会とかで話せればいいか〜って考えていたんですが、アドベントカレンダーのネタが当になくて困っていたのでこれを使います。 対象者 APIを作る時、と書いてますが、クライアント側の人にとっても知っておく必要があることなので、サーバ側の人・クライアント側の人両方が対象者です。 APIを作るときに考えること 「APIを作るとき」と言っても、色んな状況があります。 まずはそれを絞ります。 APIの種類 プライベートAPI アプリのAPIなど使う人が限定され

    Web APIを作るときに考えること。 - パルカワ2
  • JSONPで悩むある程度の人々へ

    JSONPって、クロスドメインでデータをとってこれて、Web APIとかはこれで実装されているんでしょ。 なんとなくわかる気がするんだけど、自分で作ってみるとなんかうまく動かない。 あるいはその手前で、どういう風に実装していいかわからない。 とくに自分がAPIを提供する側になると、よけいよくわからない。 Wikipediaの解説なんか、わけがわからないよ。 こんな感じの方はいませんか。 というか、ちょっと前の自分はこんな感じでした。 いろんなサイトを調べまくって、ある程度わかってきた気がしますので、後のためにここに残しておきます。 ああ、あのころの自分に教えてあげたかった。 まずJSONって何さ? JSONPにたどり着いた人はJSONのことは知っていると思いますから、簡単に。 こんな感じの「テキスト」のことですよね。 { "key1": "value1", "key2": "value2"

  • オープンソースMBaaS「Apache Usergrid」を使ってみる(1) インストールからログインまで - Qiita

    BaasBoxと同様に、オープンソースのmBaaSであるApache Usergridについて起動させてログインするまでの手順を試した。 こいつはランチャーでGUIを使うので、Vagrant環境でさくっとできるCLI環境ではなく普通のVM環境で試すと良さそう。 ダウンロード&起動 http://usergrid.incubator.apache.org/docs/getting-up-and-running-locally/ のとおり進める。 準備としてJDK 1.7とmavenが必要とあるが、別件でJDKは入れているので省略。 Ubuntuなのでmavenはとりあえずこんな感じで入れた。 $ sudo apt-get install maven $ mvn -v Apache Maven 3.0.4 Maven home: /usr/share/maven Java version: 1

    オープンソースMBaaS「Apache Usergrid」を使ってみる(1) インストールからログインまで - Qiita
    noazoh
    noazoh 2014/12/02
    Resource Owner Password Credentials と OAuth Bearerについて
  • RESTに関する3つの間違い

    楽観的排他制御を利用する非同期的なトランザクション実行であればスケーラビリティを損ねることなく2phase commitが可能である。これは、分散KVSにおけるスケーラビリティと一貫性の両立について で主張したように、同期的な2phase commitは密結合に誘導することになるため、矛盾するように思えるかもしれない。だがそんなことはない。 前半はまずこの話から入るが、後半ではRESTに関する間違いについて、3つほど思うところを述べたい。 楽観的排他制御と2phase commit reflexworksではFeedやEntry単位でatomicなトランザクション処理を行えるが2phase commitはサポートしていない。これを許すと密結合になってスケールしないからである。だが、これはあくまで同期的な処理の話であって、ネットワーク障害への耐性を考慮され、非同期処理やオフラインで使えるので

    RESTに関する3つの間違い
  • REST の欠点は何か

    原文(投稿日:2013/05/26)へのリンク 数年前、Ganesh Prasad氏はインターネットはRESTより基礎的かどうかを問うた。その後も氏はRESTやSOA、最近はクラウドについて、RESTの原則を支持しながら議論を続けてきた。近頃、LinkedIn REST Architectsグループにポストされた"RESTの欠点は何か?"という質問に対して、氏は次のように、自身のブログの内容を繰り返すことで答えている。 RESTには"欠点"のようなものがあるとは思いません。RESTはRESTという名が示す通りに上手く動作しています。しかし、RESTアーキテクチャの実装はHTTPプロトコルしか使わないことは覚えておくべきです。将来は他のプロトコルを使う実装を構想することができるでしょう。そこでは何かしらの改善が行われるはずです。 氏は続けて、改善の余地がある4つの領域について話す。ちなみに氏

    REST の欠点は何か
  • 簡単Sinatra!WebAPI・OAuth認証を使ってみよう - 角幸一郎 | type IT Academy

    Rubyで簡単、マッシュアップサービスを公開してみよう!  - 第2回 - 簡単Sinatra!WebAPI・OAuth認証を使ってみよう 今回のワークは、前回学んだ「Sinatra Framework」と「Ruby」を応用し、皆さんが使ってみたいTwitter APIを使用したソースコードを提出するというものです。この記事ではオープンソースライブラリのRubygemsの使い方も解説しているので、参考に課題にチャレンジしてみてください。 第1回目だった前回は、「Ruby言語」とは何か、そしてRuby Frameworkである「Sinatra」とは何かについてお話した後、簡単にコーディングの仕方についてお伝えしました。 第2回目となる今回は、オープンソースライブラリである「Rubygems」と、前回学んだ「Ruby」と「Sinatra」を利用して、WebAPIやOAuth認証の利用方法をお

  • IPA ISEC セキュア・プログラミング講座:Webアプリケーション編 第8章 マッシュアップ:セキュリティトークンとOAuth 2.0

    第8章 マッシュアップ セキュリティトークンとOAuth 2.0 OAuth 2.0は、アクセス認可の判断結果(誰々は、どこそこのリソースにアクセスしてよいということ)をネットワーク越しに安全に伝達することを目的としたプロトコル仕様である。このプロトコル仕様を公式に規定した RFC 6749,“The OAuth 2.0 Authorization Framework” が2012年10月に発行された。 マッシュアップに使われる素材サーバ中のリソースを、資格あるユーザに対してのみ開示するように保護して制御する案件において、OAuth 2.0は有用な手段となる。 セキュリティトークンと引き換えにリソースを得る構図 マッシュアップに組み入れるゲストリソースには、有償のものや守秘性の高いものもあり得る。このようなリソースを提供する素材サーバは、通常、アクセス制限を設け、これらを保護するようにする

  • 社内業務システムのWebAPI実装を考えてみる - おかひろの雑記

    今まで仕事上、業務システムを開発してきましたが、ブラウザでアクセスするWebアプリケーションばかりでした。 しばらくはWebアプリ開発も続くでしょうが、ようやくタブレット端末を会社で活用する流れが出てきたので、 せっかく開発したWebアプリにタブレット端末からでもアクセスできるように、WebAPIの実装について考えてみました。 なおjQueryMobileなどを使ったWebアプリにする選択肢もありますが、ここはあえてJSON/JSONPを返すWebAPIの実装を考えます。 仕様 http/httpsアクセスできるものとし、レスポンスはJSON/JSONPで選択できる。 業務システムなので、認証がある。 認証は一度行ったらログアウトなどをしない限り継続する。 認証部分はなるべく簡単に独自実装。 ログアウトも可能。 システムの利用ユーザーを変更する場合はログアウトして再ログイン。 エラーが発生

    社内業務システムのWebAPI実装を考えてみる - おかひろの雑記
  • [REST] 認証が必要な API を REST っぽく作るときのメモ - それはBooks

  • 第6回 WebAPI、認証APIのセキュリティ | gihyo.jp

    WebAPIの公開 APIとは、何らかの機能を提供するプログラムのことです。WebAPIとは、Webで提供されたAPIということです。たとえば、地図データを提供するAPIや商品の検索結果を提供するAPIが有名です。なるべく多くの人にアクセスしてほしい情報を持っている企業は、WebAPIとして情報を提供することが多くなりました。WebAPIという便利なインターフェースを用意することで多くのユーザにアクセスしてもらい、広告ビジネス等につなげていくのが狙いです。 またWebAPIは、多くの形式に対応していたほうが、多くのユーザに利用してもらうことができるため、なるべく多くの出力形式に対応しようとする傾向があります。以前はSOAPという形式が多く使われていましたが、実装方法が煩雑であったため、現在ではREST、JSON、JSONPのように実装がシンプルな形式のものが多く使われています。 WebAP

    第6回 WebAPI、認証APIのセキュリティ | gihyo.jp
  • Web API認証について

    最近、Web APIの認証をどうすべきか考えている。 例えば次のようなケースをどうするか。 「既存のWebサイトがあり、既にユーザIDとパスワードによる認証によって、ブラウザでデータを提供している。 今回、この提供データをブラウザの画面ではなく、REST APIにて取得可能にしたい。 このデータはユーザ毎に取得可能な値が違うので、認証、または認可によって制限をかけたい。」 ユーザーがブラウザからIDとパスワード(以下ID/PW)を使ってログインする方式を、そのままWeb APIにも適用しても安全なのだろうか。 Web APIの先にはスマホアプリやシェルスクリプトなどから直接ログインするものなどが考えられるが、安全かつシンプルに実装するにはどうしたらいいのだろうか。 私はセキュリティの専門家ではないので間違った考え方をしている可能性もあるが、誰かの目に留まって助言いただけるかもしれないので、

  • Google App Engine で WAN 側 IP アドレスを取得 - 😊クリエイティブWeb

  • 1