API 參考
Base64 編碼和解碼操作的技術參考。
Base64 演算法
字元集
Base64 使用 64 個不同字元來表示二進制資料:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
編碼過程
- 輸入:二進制資料或文字
- 分組:分組為 3 位元組(24 位元)區塊
- 轉換:將每個 24 位元群組轉換為 4 個 Base64 字元
- 填充:根據需要新增填充
解碼過程
- 輸入:Base64 編碼字串
- 驗證:檢查有效的 Base64 格式
- 轉換:將 4 字元群組轉換為 3 位元組區塊
- 輸出:原始二進制資料或文字
輸出格式
標準 Base64
- 格式:傳統 Base64 編碼
- 填充:使用
=
作為填充 - 字元:A-Z、a-z、0-9、+、/
- 使用案例:一般編碼
範例:
輸入:「Hello」
輸出:「SGVsbG8=」
URL 安全 Base64
- 格式:為 URL 修改的 Base64
- 填充:無填充字元
- 字元:A-Z、a-z、0-9、-、_
- 使用案例:URL 參數、檔案名稱
範例:
輸入:「Hello」
輸出:「SGVsbG8」
無填充 Base64
- 格式:無填充的標準 Base64
- 填充:無填充字元
- 字元:A-Z、a-z、0-9、+、/
- 使用案例:特定應用程式
範例:
輸入:「Hello」
輸出:「SGVsbG8」
字元編碼
UTF-8(建議)
- 標準:Unicode 轉換格式
- 支援:所有 Unicode 字元
- 相容性:廣泛支援
- 使用案例:國際文字
ASCII
- 範圍:0-127 字元
- 支援:僅基本拉丁字元
- 相容性:通用支援
- 使用案例:僅英文文字
Latin-1(ISO-8859-1)
- 範圍:0-255 字元
- 支援:西歐字元
- 相容性:良好支援
- 使用案例:歐洲語言
檔案處理
支援的檔案類型
- 圖片:PNG、JPEG、GIF、WebP、SVG、BMP
- 文件:PDF、DOC、DOCX、TXT、RTF
- 壓縮檔:ZIP、RAR、7Z、TAR、GZ
- 音訊:MP3、WAV、OGG、FLAC
- 影片:MP4、AVI、MOV、WMV
- 任何二進制檔案:支援所有檔案類型
檔案大小限制
- 最大大小:每個檔案 10MB
- 記憶體使用:為大檔案優化
- 處理:為效率進行區塊處理
錯誤處理
常見錯誤
- 無效 Base64:格式錯誤的 Base64 字串
- 檔案太大:超出大小限制
- 不支援的格式:無效檔案類型
- 編碼錯誤:字元編碼問題
錯誤訊息
- 使用者友好:清楚的錯誤描述
- 可操作:建議解決方案
- 非技術性:易於理解
- 有用:提供指導
效能規格
處理速度
- 文字:即時處理
- 小檔案:< 1 秒
- 大檔案:取決於大小和複雜度
- 優化:使用高效演算法
記憶體使用
- 最小:低記憶體消耗
- 高效:為效能優化
- 清理:自動記憶體管理
- 限制:遵守瀏覽器限制
瀏覽器相容性
支援的瀏覽器
- Chrome:完全支援
- Firefox:完全支援
- Safari:完全支援
- Edge:完全支援
- 行動裝置:iOS Safari、Chrome Mobile
所需功能
- File API:用於檔案上傳
- Clipboard API:用於複製功能
- ES6+:現代 JavaScript 功能
- Web Workers:用於大檔案處理
整合範例
JavaScript
// 編碼
const encoded = btoa('Hello World');
console.log(encoded); // "SGVsbG8gV29ybGQ="
// 解碼
const decoded = atob('SGVsbG8gV29ybGQ=');
console.log(decoded); // "Hello World"
Python
import base64
# 編碼
encoded = base64.b64encode(b'Hello World').decode('utf-8')
print(encoded) # "SGVsbG8gV29ybGQ="
# 解碼
decoded = base64.b64decode('SGVsbG8gV29ybGQ=').decode('utf-8')
print(decoded) # "Hello World"
PHP
// 編碼
$encoded = base64_encode('Hello World');
echo $encoded; // "SGVsbG8gV29ybGQ="
// 解碼
$decoded = base64_decode('SGVsbG8gV29ybGQ=');
echo $decoded; // "Hello World"
此 API 參考提供了理解和有效實作 Base64 操作的技術基礎。