任天堂が満を辞してリリースしたスマホゲー「ファイアーエムブレムヒーローズ」を割と楽しく遊んでいます。 ゲーム内では「ランダム型アイテム提供方式」でキャラクタが手に入ります。 レアリティ5がでなくても残念がらないでください […]
[Ruby on Rails]数値型(Fixnum)のメソッドを確認する10
to_int to_i 数値型をそのまま返す Integerクラスのインスタンスメソッド C言語ではto_intはto_iのシノニムとなっている。
1 2 3 4 5 |
> 1.to_i => 1 > 1.to_int => 1 |
参考 […]
お昼ご飯を200円代で済ませる
こんにちは。ひまみちゴリ美です。 最近、節約のためにランチを200円代(つまり300円以内)で済ませる日々を送っています。 今回は、私がよくやる200円代ランチのメニューをご紹介します。 よく食べる男性には、このメニュー […]
[Ruby on Rails]数値型(Fixnum)のメソッドを確認する9
odd? 奇数ならtrue Fixnumクラスのインスタンスメソッド
1 2 3 4 5 |
> 1.odd? => true > 2.odd? => false |
even? 偶数ならtrue Fixnumクラスのインスタンスメソッド [crayo […]
Google OAuth 認証を簡単にしてトークンを取得するツールを作ったのソースコード
今回は「Google OAuth 認証を簡単に実行してトークンを取得するツールを作った」の内容です。 では以下ソースコードです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script> <div id="oauth"> <h2>OAuth認証</h2> クライアントID<br> <textarea id="o_client_id" rows="1" cols="80"></textarea><br> リダイレクトURL<br> <textarea id="o_redirect_uri" rows="1" cols="80"></textarea><br> スコープ<br> <textarea id="o_scope" rows="3" cols="80"></textarea><br> スコープ一覧は<a href="https://developers.google.com/identity/protocols/googlescopes">こちら</a> <br> <button id="oauth_btn">OAuth認証</button> </div> <div id="token"> <h2>TokenとRefresh Tokenを取得</h2> コード<br> <textarea id="t_code" rows="1" cols="80"></textarea><br> クライアントID<br> <textarea id="t_client_id" rows="1" cols="80"></textarea><br> クライアントシークレット<br> <textarea id="t_client_secret" rows="1" cols="80"></textarea><br> リダイレクトURL<br> <textarea id="t_redirect_uri" rows="1" cols="80"></textarea><br> <br> <button id="token_btn">Token取得</button> <button id="token_btn">Token取得</button><br> 結果<br> トークン:access_token<br> <textarea id="t_result_token" rows="2" cols="80"></textarea><br> リフレッシュトークン:refresh_token<br> <textarea id="t_result_refresh" rows="1" cols="80"></textarea><br> 有効期限:expires_in<br> <textarea id="t_result_expires" rows="1" cols="80"></textarea><br> </div> <script> var googleOAuth = {}; ( function(){ "use strict"; var oauthUrl = 'https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=', redirectUrl = '&redirect_uri=', scopeUrl = '&scope=', offlineUrl = '&access_type=offline&approval_prompt=force'; googleOAuth.init = function() { if ( !_params()[ 'code' ] ) { $( '#token' ).hide(); _textSet(); } else { $( '#oauth' ).hide(); $( '#t_code' ).val( _params()[ 'code' ] ); _textSet(); } }; function _textSet() { $( '#o_client_id' ).val( $.cookie( 'o_client_id' ) ); $( '#o_redirect_uri' ).val( $.cookie( 'o_redirect_uri' ) ); $( '#o_scope' ).val( $.cookie( 'o_scope' ) ); $( '#t_client_id' ).val( $.cookie( 'o_client_id' ) ); $( '#t_client_secret' ).val( $.cookie( 't_client_secret' ) ); $( '#t_redirect_uri' ).val( $.cookie( 'o_redirect_uri' ) ); } function _params() { var vars = new Object, params, temp_params = window.location.search.substring( 1 ).split( '&' ); for( var i = 0; i < temp_params.length; i++ ) { params = temp_params[ i ].split( '=' ); vars[ params[ 0 ] ] = params[ 1 ]; } return vars; } function _createOAuthUrl() { return oauthUrl + $( '#o_client_id' ).val() + redirectUrl + $( '#o_redirect_uri' ).val() + scopeUrl + $( '#o_scope' ).val() + offlineUrl; } $( "#oauth_btn" ).click( function( e ) { window.location.href = _createOAuthUrl(); }) $( "#token_btn" ).click( function( e ) { var postData = { 'code' : _params()[ 'code' ], 'client_id' : $( '#t_client_id' ).val(), 'client_secret' : $( '#t_client_secret' ).val(), 'redirect_uri' : $( '#t_redirect_uri' ).val(), 'grant_type' : 'authorization_code', 'access_type' : 'offline' }; $.post( "https://www.googleapis.com/oauth2/v4/token", postData, function( data ){ $( '#t_result_token' ).val( data.access_token ); $( '#t_result_refresh' ).val( data.refresh_token ); $( '#t_result_expires' ).val( data.expires_in ); } ).fail( function( data ) { $( '#t_result_token' ).val( data.responseJSON.error_description ); $( '#t_result_refresh' ).val( '' ); $( '#t_result_expires' ).val( '' ); }); }) $( '#o_client_id' ).change( function() { $.cookie( 'o_client_id', $( '#o_client_id' ).val() ); }); $( '#o_redirect_uri' ).change( function() { $.cookie( 'o_redirect_uri', $( '#o_redirect_uri' ).val() ); }); $( '#o_scope' ).change( function() { $.cookie( 'o_scope', $( '#o_scope' ).val() ); }); $( '#t_client_id' ).change( function() { $.cookie( 'o_client_id', $( '#o_client_id' ).val() ); }); $( '#t_client_secret' ).change( function() { $.cookie( 't_client_secret', $( '#t_client_secret' ).val() ); }); $( '#t_redirect_uri' ).change( function() { $.cookie( 'o_redirect_uri', $( '#o_redirect_uri' ).val() ); }); })(); googleOAuth.init(); </script> |
これもtextにコピーす […]
Google OAuth 認証を簡単に実行してトークンを取得するツールを作った
Google OAuth認証 クライアントID リダイレクトURI スコープ スコープ一覧はこちら OAuth認証 Google TokenとRefresh Tokenを取得 コード クライアントID クライアントシーク […]
Google APIを使用するためにGoogle OAuth認証をしようよ
Google Calendar APIやGoogle Analytics API,Gmail,プロフィール,などなど これらのGoogleサービスを使用するにあたって最初に必要になるのがOAuth認証。 面倒そうだけどや […]
[2017年]今年の目標を立ててみた
こんにちは。ひまみちです。 昨日、1月28日(土)は旧正月でした。 風水の先生に、この日に1年の目標を立てると良いとアドバイスされたので、今日は1年の目標を半日かけて立ててみました。 結構いい感じに目標を立てられたので、 […]
[Ruby on Rails]数値型(Fixnum)のメソッドを確認する8
fdiv 割り算の小数点表示 Fixnumクラスのインスタンスメソッド
1 2 3 4 5 |
> 100.fdiv(10) => 10.0 > 10.fdiv(3) => 3.3333333333333335 |
modulo 割り算の余り Fixnumクラスのインスタンスメソッド C言語の中で […]
[Ruby on Rails]数値型(Fixnum)のメソッドを確認する7
div 割り算 Fixnumクラスのインスタンスメソッド
1 2 3 4 5 |
> 10.div(5) => 2 > 20.div 15 => 1 |
divmod 割り算の結果と余りを配列で返却 Fixnumクラスのインスタンスメソッド [cra […]