@thorikiriのてょりっき

@thorikiriがWebとかAndroidとかの技術ネタや本を読んだブログです

Web先端技術味見部#17 (今回は「Google Cloud Endpoints」!) #ajimibu に行って来ました

味見部は行きたい行きたいとは思ってたけど、今まで都合つかずに初参加です。今回は、Google Cloud Endpointsが題材でした。
15分くらい遅れてきたので、説明は聞いてないです。とりあえずメモったことなどを。
資料 → Hello Endpoints!
携帯を会場に置き忘れたけど、喫煙所で思い出して事なきを得ました。ご迷惑おかけしてすみません、ありがとうございました。

ハンズオン

  • プロジェクト作成
    • Eclipseをたちあげて、プロジェクトを作る
    • 新規プロジェクトのGoogleカテゴリの中でWebApplicationProjectを選択
    • プロジェクト名、パッケージを入れる
    • GWTはいらない。
    • 1.7.5(以上)を選択
    • Javaは1.6くらいにしておくのが無難かもしれません。まだ1.7は出たばかりなので。
    • web.xmlを確認する
 <servlet-mapping>
  <servlet-name>SystemServiceServlet</servlet-name>
  <url-pattern>/_ah/spi/*</url-pattern>
 </servlet-mapping>

Angular.js + Endpoints

その他

後半は質問タイムになっていたのですが、コード書くのに一生懸命で半分くらい聞いてませんでした。
実際にローカル環境で動作させようとがんばて見ましたが、動きませんでした。
なぜでしょう・・・。
JavaScriptエラーです。gapi.clientがundefinedとなってしましました。
と思ってブログ書きながら色々試してみたら動くようになりました。初期化処理がうまくいってなかったようです。

  • ダメなコード
$(function() {
    gapi.client.load('testEndpoint', 'v2', function() {
        // 処理
    }, ROOT);
});

jQueryのdocument.readyで良いと思ってましたが、ダメなようです。

  • OKなコード
window.onload = function() {
    gapi.client.load('testEndpoint', 'v2', function() {
        // 処理
    }, ROOT);
}
  • jQueryを使いたい場合のOKなコード
$(window).on('load', function() {
    gapi.client.load('testEndpoint', 'v2', function() {
        // 処理
    }, ROOT);
});