Nancyでのトークン認証について(ソースコード公開しました)

ソースコードを https://github.com/ken200/Tokenken2 にアップロードしました。 ※何をやってたのかは、前々回、 前回を参照してください。

Nancyでのトークン認証について(WebAPI(認証有)、トークン生成アプリが別の場合)

前回の続きです。 WebAPIの認証機能の実装について 「API利用する開発者ごとに固有のトークンを生成、これで認証を行う」ようなことを実現するための調査を行いました。 WebAPIは Nancy の使用して実装することを前提で進めます。 Nancyでは認証の種類として…

こんなの作る予定

仕事でやることになりそうなので調査してました。

選択文字をフォーマットに沿って展開するマクロ

現時点では繰り返し展開のみ実装しています。 例) ★{10}☆ → ★★★★★★★★★★☆ //SimpleExtend.jsee var parseTarget = document.selection.Text; if(parseTarget.match('^(.+)\{(\\d+)\}(.*)$') != null){ var str = RegExp.$1; var cnt = RegExp.$2; var footer …

AngularJS - IEではエレメントのstyle属性に定義したバインド式({{..}})が動作しない??

ChromeとIE11でしか確認していません。 IEでは、スタイル属性のなかでは バインド式が動きませんでした。 ちなみに、data-*属性のなかでは動作し、値が展開されました。下記コードのisLimitOver()が呼び出しされないのです。。 <li ng-repeat="item in items" data-task-id="{{item.id}}" data-task-limit="{{item.limit}}" data-task-finished="{{item.finished}}"> <p ng-click="showDetail($index)"> </p></li>

AngularJS + jQuery + jQueryUI(ダイアログ) を試してみた

なんとなくTodoアプリを作ってみました。 実際に動くものは ここ で確認できます。独自ディレクティブについて。 リファクタリングすれば多少はきれいになるとは思いますが、 凝ったことをやろうと思うと結構考えないと、すぐにぐちゃぐちゃになりそうですね…

ASP.NET WebForms で非同期処理を行う (.net4.5)

WebPageではasync/awaitをそのまま使うことができません。 利用するには以下の手順を踏みます。 1,Web.config設定 /configuration/appSettingsに、key=UseTaskFriendlySynchronizationContextな項目を追加。 詳細は下記を参照。 <configuration> .... <appSettings> <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" /> .... </appSettings> .... </configuration>

2階層以上のプロトタイプチェーンについて

「prototypeオブジェクトにベースオブジェクトインスタンスを設定したら、多重継承ってどうやるんだ??ベースクラスを設定したらサブクラスのprototype書き換えられないじゃん???」 という考えから抜け出せられず、また継承使わずとも十分実装できること…

関数デコレーターの動作

処理フロー 実行時、インタプリタがデコレーター割り付けを見つけると、直ちにそのデコレーター関数を呼び出す。関数の戻り値は関数オブジェクト(呼び出し可能:callable)であること。 デコられた(被デコ)関数(例ではhello/hello2)を呼び出したときの動きとし…

Ubuntu12.4.1 + Python3 + Bottle + Jinja2 の組み合わせ

少しハマったのでメモ。 Ubuntuのapt-getでインストールできるPython3系は3.2なのですが、 これだとJinja2が動かないようです。 Jinja 2.7 brings experimental support for Python >=3.3. Introduction — Jinja2 2.8-dev documentation ソースをビルドして…

カスタムオブジェクトの定義について

JavaScriptのprototype周りを勉強しながら、過去・現在の自分で書いたコードを見直したところ、 ちょっとまずい構成をしていたことが判明しました。例として以下のコードで考えます。 //ストップウオッチ var StopWatch = function(){ var _st = undefined; …

NancyでSessionを扱う

ナンシーはデフォルトではSessionが無効になっています。 有効化するにはBootstrapperの初期化時に以下を呼び出します。 using System; using System.Collections.Generic; using System.Linq; using System.Web; using Nancy; using Nancy.Session; namespa…

Nancyでのセキュリティー (CSRF)

ナンシーでのセキュリティ対策として、CSRFについて調査しました。 パッケージは Nancy.Hosting.Aspnet と Nancy.Viewengines.Razor を使いました。 ビュー - 登録フォーム (Views/form.cshtml) ASP.NET MVCと同様に、チェック対象フォームにトークンを組み…

Nancyメモ

ASP.NETアプリケーションとしてホストした場合の処理フローメモ Nancy.Hosting.Aspnet.NancyHttpRequestHandler 静的オブジェクト。 コンストラクタ内で呼び出すGetBootstrapper()で、 web.configにnancyFxセクションが存在する場合は、そこからオブジェクト…

Nancyでのフォーム認証

ナンシーでフォーム認証を行うには、以下の流れで行います。1, Nancy.Authentication.Formsパッケージのインストール 2, IUserMapper実装クラスの作成 3, ログイン、ログアウトルートの実装 4, フォーム認証の設定 IUserMapper実装クラスの作成 IUserMapper…

Nancyでの静的リソースアクセス

ナンシーで静的リソースへのアクセスを行うには3つの方法があります。 デフォルト設定に従う。 Nancy supports multiple static content conventions at once and is shipped with a default convention that will look for files in the /content path of y…

Nancyのトレース機能

ナンシーのトレース機能について調べてみました。まずはBootstrapperのサブクラスを作成してトレース機能を有効にします。 using Nancy; using Nancy.Bootstrapper; using Nancy.TinyIoc; using Nancy.Diagnostics; namespace NanNan { public class MyBoots…

050plusの留守番電話設定

仕事用の電話番号が欲しかったので、050plus契約してiPhoneで使ってます。 今のところ3G回線でも一部地域を除き、ほぼ問題なく通話できています。*1 そんな感じで完璧ではないけど、まぁいいかなという感じで契約してから半年くらい使ってます。つい昨日、最…

ブログの引っ越し(2回目)

やっぱ自分のデータは自分で管理しなきゃ!ということで、はてなダイアリーからレンタルサーバー上のWordPressへ引っ越ししたものの、日々のメンテナンスに疲れてしまいました。そんな折、はてなブログがいい感じになってきてるということを聞きましたので再…

新しい非同期呼び出し(async,wait)を試す

C#

.NET4.5から導入される新しい非同期呼び出し。 こんな感じで使うようです。 public partial class Form1 : Form { public Form1() { InitializeComponent(); } //内部で非同期処理を行うメソッドにはasyncをつける private async void button1_Click(object …

複雑なラムダ式

C#

最近、ASP.NETMVCのソースコードを読んでいるのだが、そこでは複雑なラムダ式が多々でてくる。 今回はその一例としてアクションフィルタの処理(ControllerActionInvokerクラスのInvokeActionMethodWithFiltersメソッド)を自分なりに解釈し、コードを起こした…

Windows端末でIPルーティングさせる

上記ネットワークにおいて、 開発端末(VM)(Win7)からサーバー(VM)(XP)へ接続できるようにネットワーク設定した時のメモ 通信の流れ 開発端末(VM)(Win7) → ルーター → ホスト端末(Win7) → ホスト端末(Vista) → サーバー(VM)(XP) ルーターのルーティングテーブ…

javascriptで再帰処理

こんな感じで書きました。 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <title>再帰呼び出しサンプル</title> </head> <body> <p id="msg_aisatu1">おはよう</p> <p id="msg_aisatu2">こんにちは</p> <p id="msg_aisatu3">おげんきですか</p> <p id="msg_aisatu4">調子はどうだい?</p> <…</body></html>

オブジェクト思考のキモを体感するには

このエントリーを読んで。 突破すると一気に学習が加速する「オブジェクト指向学習の壁」を突破する鍵となる知識を、中学生でも分かるように図解してみた(初学者向け) - @fromdusktildawnの本館「壁」を突破できたと思ったのは、デコレーターパターンとコマ…

Jenkinsによるテストの自動化

はじめに Jenkinsの話(CIの話)を聞き、テストの自動実行がとても魅力的に感じたので、 空きPCに環境構築して体験してみた。 やりたいこと VisualStudioのソリューションファイルをビルドする。 MSTestを使ったユニットテストの実行。 ユニットテストの失敗時…

あとでやるリストを抽出&出力するemeditorマクロ(ハッシュタグ機能追加バージョン)

これの派生バージョンとして ハッシュタグ別にリストを出力する機能を追加しました。公式サイトに登録しているもの(本流バージョン)はこれで完成形かなと思います。 出力結果も微妙に違ってくるので派生バージョンの公開は独自に行うことにします。 こちらか…

あとでやるリストを抽出&出力するemeditorマクロ

テキストファイル内に書かれている"あとでやる"リストを表示するマクロです。私個人で、テキストファイルに日々の作業実績記録&あとでやるメモを書き出しています。 これらタスクの消化を忘れないために、タスクのリスト抽出&表示するマクロを作りました。…

行列逆転するemeditorマクロ

アプリ開発時、エクセルを使ってダミーデータを作成するときによくやる操作を自動化できるようにと思い、このマクロを作成しました。 ※DBにSQLServerを使ったときのダミーデータ作成方法。他はよくわかりません。 select雛形をSQLManagementStudioから取得*1…

現在編集中ファイルをバックアップするemeditorマクロ

マクロ第二段です。現在編集中ファイルを保存してそのコピーを同フォルダに作成します。 サンプルソースほぼ引用なので、この場で公開するに留めておきます。 このマクロの発展案として、一定数たまったら別の保管用フォルダに移動する処理を入れたりしよう…

選択範囲の指定列に連番をInsertするemeditorマクロ

EmEditor既存機能で「番号の挿入」が存在しますが、 自分の思っているのとすこし違っていたので、欲しかった動きをするマクロを組んでみました。 公式サイトに登録させてもらいましたので、下記URLから取得できます。http://jp.emeditor.com/modules/mydownl…