發表文章

Quilt Patch 管理操作方法

QUILT in Linux 管理 Patch 的工具 Edit quiltrc file Ubuntu 預設使用 nano cat > ~/.quiltrc <<EOF QUILT_DIFF_ARGS="--no-timestamps--no-index -pab --color=auto“ QUILT_REFRESH_ARGS="--no-timestamps--no-index -pab" QUILT_PATCH_OPTS="--unified" QUILT_DIFF_OPTS="-p" QUILT_SERIES_ARGS="--color=auto" EDITOR="vim" EOF EDITOR="nano" 修改預設的編輯器 在 Ubuntu 14.04 環境下,即使已經新增 .quiltrc 檔案了,但是編輯時,預設還是使用了 nano。 為了要使用熟悉的 vim ,只要在 .bashrc 下,直接 export EDITOR=vim ,就可以解決這個問題了。 --- .basrc --- export EDITOR=vim -------------- Package 先去建立 Package make package/xxx/{clean|prepare|compile} V=s Quilt 進入編譯目錄 cd build_dir/target*/xxx 查詢 Patch 查詢所有 Patch 綠色的字 : 已經 apply 的 patch 橘色的字 : 已經 apply 的 patch, 且是目前最新的 patch 白色的字 : 還沒 apply 的 patch quilt series 查詢 apply Patch quilt applied 查詢未 apply Patch quilt unapplied 查詢下一個 patch quilt next 查詢最新的 patch quilt top 查詢 patch 包含那些檔案 quilt files Push/Pop Patch p...

[VS2017] 自動換行

[VS2017] 自動換行 開啟 Visual Stdio , 選取上面的工具,選項,文字編輯器,所有語言,一般選項中,有個 Word Wrap 選項,將他打勾,後續的文件,程式碼,只要超過編輯器預設的寬度,即會自動換行。

[Middleware] Using Middleware in Asp.Net Core

[Middleware] Using Middleware in Asp.Net Core 因為在 Asp.Net Core 中,它本身是一個管線的概念,Middleware 本身就是坐落在管線之中,所以我們可以透過 Middleware , 一直在管線中,安插我們想要執行的一些程式邏輯。 Middleware Middleware 基本上需要注入 RequestDelegate,也需要實作 Invoke 方法。有一點需要注意的是,在 Invoke 中,一定要呼叫 RequestDelegate 方法, 否則管線運行時,運行到此 middleware 就會停止於目前的管線中。 public class MyMiddleware { public MyMiddleware(RequestDelegate next) { _next = next; } public RequestDelegate _next { get; } public async Task Invoke(HttpContext context) { Console.WriteLine("Hello, I am in Middleware!"); await _next(context); } } Configure // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } // 將 Middleware 排入 管線中 app.UseMiddleware<MyMiddleware>(); app.UseMvc(); } Result MiddlewareExam...

[Sniffer] Sniffer Wireless Packet on Mac

[Sniffer] To sniffer wireless packets on Mac 由於對 Mac 不熟,但是想抓一些無線的封包,所以 google 一下,順便筆記。 新增 airport 連結 $ sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/local/bin/airport airport $ airport Usage: airport <interface> <verb> <options> <interface> If an interface is not specified, airport will use the first AirPort int erface on the system. <verb is one of the following: prefs If specified with no key value pairs, displays a subset of AirPo rt preferences for the specified interface. Preferences may be configured using key=...

[Swagger&ExtensionService] Adding Swagger and Extensions to ASP.NET Core Web API using XML Documentation

Adding Swagger and Extensions to ASP.NET Core Web API using XML Documentation 之前一直在想,很多服務與設定檔都集中在 Startup.cs 裡面,可是東西服務很多,整個 Configure 與 ConfigureServices 就會越來越肥,但是很不喜歡這樣,很想把類似相關聯的東西集中在一起。Google 看看,做筆記一些筆記,順便研究該怎麼把那些東西從 Startup 中抽離出來。 Startup Startup 類似是以前 ASP.NET 的 Global.asax。它掌管整個系統的設定檔,與要運行那些服務到管線中。它主要分成兩個部分,一個是 Configure 與 ConfigureServices。 ConfigureServices ConfigureServices 主要是掌管註冊服務到的ASP.NET Core的服務容器。 // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); } Configure Configure 主要是將要運行的程式或是路由一些設定到後續程式運行的管線中。 // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } else { ...

[JWT] Bearer Token in Asp.Net Core

[JWT] Bearer Token in Asp.Net Core JWT (Json Web Token),主要是為了保護網路安全傳輸的資訊,透過 JWT 可以產生一把權杖,透過這把權杖,來驗證使用者的資訊,細節可以參考附錄4。 JWT Token (權杖) 權杖主要由三個部分所組成(Header, Payload,以及Signature)。 {{"alg":"HS256","typ":"JWT"}.{"nameid":"ROBERT.CHEN@RFF.COM","http://schemas.microsoft.com/ws/2008/06/identity/claims/role":"Admin","exp":1532966362,"iss":"Robert Chen","aud":"Robert For Fun"}} "token" : "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1laWQiOiJST0JFUlQuQ0hFTkBSRkYuQ09NIiwiaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93cy8yMDA4LzA2L2lkZW50aXR5L2NsYWltcy9yb2xlIjoiQWRtaW4iLCJleHAiOjE1MzI5NjYzNjIsImlzcyI6IlJvYmVydCBDaGVuIiwiYXVkIjoiUm9iZXJ0IEZvciBGdW4ifQ.5wl6YqmVI9IHSDSgFw_i1bW5OpZuiKGJ9s38V0HiGog" Header 表頭 表頭主要定義演算法,與權杖的類別。 {"alg":"HS256","typ":"JWT"} 上面的內容是指 HMACSHA256 演算法,權證的類別為"JWT" Payload ...