前言
通常開發WEB服務時, 對於一些比較敏感的資訊, 我們會盡可能的不要寫死在程式碼裡(如資料庫帳密以及某API的ACCESS KEY)避免資訊外流的問題發生
又或是說,
當程式呼叫的某些REST API 有分正式與開發的版本的時候, 如果Endpoint是寫死在程式碼裡面, 絕對是非常非常的不方便, 開發的時候改成開發的, 上線前還要再改回來, 然後重新編譯
一般而言, 我們可以將這些資訊保存在外部檔案中, Runtime的時候再來取得這些資訊
又或是將這些資訊寫在環境變數之中, 等Runtime的時候再來取得這些資訊
若你的WEB服務是部屬在 Azure App Service的話, 我們可以善用Application Settings這項功能, 我們可以將想要存的都寫在裡面
列如:
假設Application Settings 裡定義了BOT_NAME 以及 PROJECT_ID
我們可以使用以下程式碼來取值
System.Configuration.ConfigurationManager.AppSettings[]
首先,
Step 1. Add Reference
Step 2. Import Configuration
using System.Configuration;
Step 3. Get Value
假設我們要取PROJECT_ID的值, 那程式可以這樣寫
var ProjectId = System.Configuration.ConfigurationManager.AppSettings["PROJECT_ID"]
?? "MY_DEFAULT_VALUE";
留言
張貼留言