Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
go言語でOAuth2認証 最近,go言語でGithubとQiitaのOauth2認証を実装することがあったのでメモ書き程度に書いていきます. OAuth2認証のフロー OAuth2のフローは以下のようになっています(Githubの場合) Githubにコードをリクエスト あらかじめ指定しておいたページに自動でリダイレクト リダイレクト時にURLにパラメータで渡されたcodeを使ってアクセストークンをリクエスト 3のレスポンスのbodyからアクセストークンを取得 アクセストークンを使ってAPIを使用 ざっくりと以上のような流れで認証します. Githubの場合 まず,Githubのアプリに登録します. そこで得られたClientIDとClientSecretをメモなどして覚えておきましょう. リダイレクト先のURLは自分のサイトの適当なURLを指定しましょう(例http://自分のサイトU
はじめに TruffleやOpenZeppelinを利用して発行したERC20ベースのTokenを送金するのに、MistやMetamaskを使うことがあると思います。 本記事ではこれらを用いず、コードベースで作成したトランザクションをネットワークに送る方法を行います。 EthereumのTransactionについて Ethereum yellow paper の4-2に詳細が書いてありますが、トランザクションは、 nonce: 送信者が今までに送信したTransactionの数 gasPrice:Transactionが実行された結果として消費されるgasの価格 (wei/gas) gasLimit:Transactionが実行される前に支払われるgas. このgasLimitを超えてTransactionが実行されるということはない to:送信先。今回の場合だとERC20ベースToke
Go勉強会 Webアプリケーション編 #1で使おうと思っているGo Web Examplesの和訳です。ほぼGoogle翻訳ですが、リンク等も整理された状態であると便利だと思い作りました。前回(HTTP Server)、次回: Go Web Examplesの和訳 (Templates)。 はじめに Goのnet/httpパッケージは、HTTPプロトコルに多くの機能を提供します。それがうまく行かないことの1つは、リクエストURLを単一のパラメータに分割するような複雑なリクエストルーティングです。幸運なことに、これには非常に一般的なパッケージがあります。これは、Goコミュニティの優れたコード品質でよく知られています。この例では、gorilla/muxパッケージを使用して、名前付きパラメータ、GET/POSTハンドラ、およびドメイン制限を使用してルートを作成する方法を示します。 gorilla
TwitterのAPIの制限が厳しくなりましたねー。私も以前はTwitterのAPIで気軽に遊んでいたのですが、APIの使用に申請が必要になったりして(しかし遊びで使うという内容で300文字も書けるわけもなく)困っていました。そこで、APIを使わずに自動でツイートする方法を考えました。 で、まず初めに利用規約を読んでみました。利用開始するときに誰もが読む長文ですね。読まずに機械的に同意を押している向きもあると思いますが、それは本当にやめたほうがいいです。 関係がありそうなところを抜き出すと以下です。 (iii)Twitterから提供される(かつ該当する利用条件に従う場合にのみ提供される)、当社の現在利用可能な公開インターフェース以外の方法(自動プログラムか否かを問わない)で、本サービスへのアクセスもしくはその探索またはアクセスもしくは探索の試み(ただし、Twitterとの個別契約で特に許可
S2 Geometry Libraryの概要と所感の続き。 軽い雰囲気でGo言語のS2 Geometry Libaryを使ってみたけど、使い方が全然分からなくて挫折。そして猛烈に反省。 というのも、ライブラリ中で多用されているCellという構造体がよく分からない。 にっちもさっちも行かなそうなので、S2 Cellsを読んで理解することにした。 主に、space-filling curve(空間充填曲線)という技術の話である。 S2 Cellsとは S2ライブラリにおける空間の表現方法 S2では、単位球面上をcellと呼ばれる領域の集合に分解する。 各cellは4つの測地線を境界とする四角形である。 cellは階層を成している 最上位の階層は、正六面体の6つの表面を単位球に被せて得られる。こんな感じか・・・ 最下位の階層は、各cellを再帰的に4つの子cellに分割し得られる。 例えば、下の
Go勉強会 Webアプリケーション編 #1で使おうと思っているGo Web Examplesの和訳です。ほぼGoogle翻訳ですが、リンク等も整理された状態であると便利だと思い作りました。前回(Hello World)、次回(Routing)。 はじめに この例では、Goで基本的なHTTPサーバーを作成する方法を学習します。最初に、HTTPサーバーの機能について説明しましょう。基本的なHTTPサーバーには、いくつかの重要な仕事があります。 動的なリクエストの処理:ウェブサイトを閲覧したり、アカウントにログインしたり、画像を投稿したりするユーザーからの受信リクエストを処理します。 静的なアセットの配信:JavaScript、CSS、および画像をブラウザに配信して、ユーザーにダイナミックなエクスペリエンスを提供します。 接続を受け入れる:インターネットからの接続を受け入れるには、HTTPサーバ
目標 windowsでGO言語、node.jsの環境構築をして、smarket_draftを動かすこと。 必要な環境 golang node.js npm 筆者のPC環境 windows 10 intel core i7 (64bit) 1.Go言語のための環境構築 下記の3つの手順に従って環境構築をします。 なお、はじめてのGo言語(on windows)を参考しました。 手順①Go言語のコンパイラをインストールする。 windowsのコマンドプロンプトでGo言語を使用するために、ダウンロードページでwindows版のコンパイラをダウンロードします。 現在(2018/09/01)の最新versionは「go1.11.windows-amd64.msi」。 うまくインストールされれば、C:直下に「GO」フォルダが作成されます。 手順②環境変数を設定する。 「環境変数」のGOROOTを「C:
スライスの先頭要素に値を追加するレシーバを作成する際に、ポインタ関連で詰まったので、その時の失敗例と成功例、その理由を書いておく。 やりたかったこと 以下のように、スライスの先頭に値を追加するレシーバを作成したい。 type Numbers []int func (numbers Numbers) AddToHead(num int) { // 省略 } func main() { nums := Numbers{0} fmt.Println(nums) // [0] nums.AddToHead(5) fmt.Println(nums) // [5 0] }
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く