Base64エンコードを使用してサーバーにユーザー名とパスワードを送信したい。
Npmを使用して次のモジュールをインポートできることがわかりました。
npm install --save angular-base64
次のフォルダーがプロジェクトフォラーに作成されていることを確認しました:node_modules\angular-base64
Component.jsファイルで、次のいずれかの行を使用してコンポーネントをインポートしようとしました。
import 'angular-base64/angular-base64';
インポートについて文句は言いませんが、次の行を使用しようとすると:
headers.append('Authorization', 'Basic ' + base64.encode('username:temppass'));
「base64が見つかりません」と表示されます。
そのために外部ライブラリは実際に必要ありません。
WindowOrWorkerGlobalScope.btoa()メソッドは、文字列内の各文字がバイナリデータのバイトとして扱われるStringオブジェクトからbase-64エンコードASCII文字列を作成します。
btoa()
関数を使用してエンコードします。
console.log(btoa("username:temppass")); // dXNlcm5hbWU6dGVtcHBhc3M=
デコードするには、 atob()
関数を使用できます。
console.log(atob("dXNlcm5hbWU6dGVtcHBhc3M=")); // username:temppass
サポートされているブラウザのリストを参照してください here