『壹』 微信答題小程序雲開發--實現雲函數上傳題目圖片 base64功能
需求功能
在微信答題小程序雲開發中實現,支持上傳題目圖片至雲存儲並以Base64編碼,並可在小程序中顯示。
雲函數開發遇到的問題
普通用戶在微信雲開發環境內無許可權寫入雲存儲文件,使用wx.cloud.uploadFile不可行。
雲函數作為後台服務端具備管理員許可權,可調用雲函數上傳文件以解決許可權問題。
官方文檔中雲函數使用示例可能不夠直觀,_dirname代表文件根目錄,並非直接移動文件,而是用於指定雲存儲空間路徑。
解決方案
將本地文件編碼為Base64格式,再通過雲函數上傳至雲存儲空間。使用微信小程序文檔中的編碼函數實現圖片Base64編碼。
支持單張或多張圖片上傳,通過遍歷操作實現。
上傳至雲存儲過程
使用node將Base64編碼轉換為Buffer對象。
上傳後雲存儲查看
成功上傳至雲存儲,通過雲函數操作可實現圖片的存儲與檢索。
答題小程序顯示效果
在答題小程序中,通過調用雲函數獲取存儲的Base64編碼圖片,實現題目圖片的顯示。
雲存儲文件名稱編碼方式
通過使用圖片上傳時間與上傳順序進行編碼,確保文件名唯一性,避免重名問題。
時間編碼示例
具體編碼方式在js文件中已有說明,通過將時間戳與上傳順序結合,確保各文件具有獨特標識。
『貳』 此次考試採取拍照回傳方式進行作答,什麼意思
通過拍照上傳到電腦的方式提交答卷。考生使用手機答題,在遇到主觀題時,可以直接點擊答題頁面的按鈕,調用手機攝像頭,把紙面作答的解題過程拍照上傳。考生如果使用電腦答題,可先用手機拍照,然後把照片傳到電腦上,再把照片提交到考試系統中。