注意
セキュリティリスク等の観点で、私の知識不足がございました。
そのため、新たにENViedパッケージを使用してAPIキーを読み込む記事を書きました。
やりたいこと
APIを使用する時にアクセストークンを用いることがあるかと思いますが、ソースコードにベタがきしてしまうと、GitHub等に公開した際に丸見えです。
そのためアクセストークンは秘匿化しておきたい。
1.パッケージインストール
flutter_dotenvというパッケージを使用します。
.envファイルから環境変数を読み込むための便利なパッケージです。
環境変数は、アプリケーションの設定や認証情報などの機密情報を外部のファイルに保存し、アプリの実行時に読み込むために使用されます。
ターミナルで以下を叩く。
flutter pub add flutter_dotenv
2.envファイルの作成
①.envファイルを作成。
ルートディレクトリの直下に.envファイル
を作成します。
.envファイルは、アプリケーションで使用される環境変数を定義するためのテキストファイルです。
②アクセストークンを記述
作成した.envファイルに以下のように記載します。
ACCESS_TOKEN=******************************
*****に作成したアクセストークンを記述します。
3..gitignore
に.envを追加
上記で入力したアクセストークンが公開されないように.gitignore
に.envファイルを追加します。
# .env ファイルを追加
.env
4..envファイル
をassetに追加
assets:
- .env
5..envファイル
を読み込む
main.dart
で.envファイルを読み込みます。
import 'package:flutter_dotenv/flutter_dotenv.dart';
Future<void> main() async {
await dotenv.load(fileName: '.env');
runApp(const MyApp());
}
dotenv.load
関数は、指定されたファイル名(ここでは.env)のファイルから環境変数を読み込みます。
これで以下のようにdotenv.env['ACCESS_TOKEN']でアクセストークンを呼び出すことが出来ます。
final String token = dotenv.env['ACCESS_TOKEN'];