摘要:在微信端打開手機攝像頭拍照,將拍照圖片保存到服務器上需要使用到微信的接口,主要使用到了拍照或從手機相冊中選圖接口上傳圖片接口參考資料一引入微信二通過接口注入權限驗證配置三微信端拍照接口默認可以指定是原圖還是壓縮圖,默認二者都有可以指
在微信端打開手機攝像頭拍照,將拍照圖片保存到服務器上需要使用到微信的JSSDK接口,主要使用到了拍照或從手機相冊中選圖接口(chooseImage),上傳圖片接口(uploadImage)
參考資料:
https://mp.weixin.qq.com/wiki...
https://www.easywechat.com/do...
一:引入微信js
二:通過config接口注入權限驗證配置
wx.config(wechat->js->config([ "chooseImage", "uploadImage", "downloadImage" ]) ?> );
三:微信端拍照接口
wx.chooseImage({ count: 1, // 默認9 sizeType: ["original", "compressed"], // 可以指定是原圖還是壓縮圖,默認二者都有 sourceType: ["album", "camera"], // 可以指定來源是相冊還是相機,默認二者都有 success: function (res) { var localIds = res.localIds; // 返回選定照片的本地ID列表,localId可以作為img標簽的src屬性顯示圖片 } });
四:將照片上傳到微信服務器接口
wx.uploadImage({ localId: localIds, // 需要上傳的圖片的本地ID,由chooseImage接口獲得 isShowProgressTips: 1, // 默認為1,顯示進度提示 success: function (res) { var serverId = res.serverId; // 返回圖片的服務器端ID }, fail: function() { //上傳圖片到微信服務器失敗 return false; } });
五:將微信服務器的圖片下載到本地服務器
前端:
//url表示php接口地址 //serverId表示圖片的服務器端ID $.post(url, {"media_id":serverId}, function(data) { if (data.type == "success") { //上傳成功 } else { //上傳失敗 } });
php(接口)
public function actionUpload() { Yii::$app->response->format = Response::FORMAT_JSON; $request = Yii::$app->request; $mediaId = $request->post("media_id"); if (empty($mediaId)) { return [ "type" => "error", "message" => "參數錯誤!" ]; } //臨時素材 $temporary = Yii::$app->wechat->material_temporary; //創建服務器目錄 $path = "wechat/" . date("Ymd",time()) . "/"; $fullPath = Yii::getAlias("@webroot") . "/" . $path; if (!is_dir($fullPath)) { FileHelper::createDirectory($fullPath); } //設置圖片名稱 $fileName = Yii::$app->getSecurity()->generateRandomString() . "-" . date("His",time()); //將服務器端的臨時素材下載到本地服務器 $temporary->download($mediaId, $fullPath, $fileName); return [ "type" => "success", "url" => $path . $fileName . ".jpg", ]; }
前端代碼整合
wechat->js->config([ "chooseImage", "uploadImage", "downloadImage" ]); $JS = <<registerJs($JS); ?>
根據如上代碼就可以實現微信端打開攝像頭拍照再將相片保存到服務器功能
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/31701.html
摘要:目前正在寫一個微信公眾號的小項目,記錄一下遇到的問題和解決方法主要是前端。前端提交時使用,在后端再取出對應的微信支付看了下文檔,以前是需要用喚起支付,而現在則是把微信內置到了微信的瀏覽器中。 目前正在寫一個微信公眾號的小項目,記錄一下遇到的問題和解決方法(主要是前端)。內容持續更新中~ 主要實現 前后端分離前端為 SPA 單頁面使用微信的JSSDK微信支付 技術方案 后端使用 php ...
摘要:目前正在寫一個微信公眾號的小項目,記錄一下遇到的問題和解決方法主要是前端。前端提交時使用,在后端再取出對應的微信支付看了下文檔,以前是需要用喚起支付,而現在則是把微信內置到了微信的瀏覽器中。 目前正在寫一個微信公眾號的小項目,記錄一下遇到的問題和解決方法(主要是前端)。內容持續更新中~ 主要實現 前后端分離前端為 SPA 單頁面使用微信的JSSDK微信支付 技術方案 后端使用 php ...
摘要:圖片數據繪制到先構造對象,為,圖片之后繪制到的圖片文件數據繪制到還是先轉換成一個,然后構造對象,為,圖片之后繪制到利用上面的函數,由對象得到格式的,再參考圖片數據繪制到轉換為對象并使用發送轉換為對象后,可以使用上傳圖像文件。 實現功能和適用業務 采集本地攝像頭獲取攝像頭畫面,拍照保存,上傳服務器; 前端上傳圖片處理,展示,縮小,裁剪,上傳服務器 實現步驟 調取本地攝像頭(get...
摘要:圖片數據繪制到先構造對象,為,圖片之后繪制到的圖片文件數據繪制到還是先轉換成一個,然后構造對象,為,圖片之后繪制到利用上面的函數,由對象得到格式的,再參考圖片數據繪制到轉換為對象并使用發送轉換為對象后,可以使用上傳圖像文件。 實現功能和適用業務 采集本地攝像頭獲取攝像頭畫面,拍照保存,上傳服務器; 前端上傳圖片處理,展示,縮小,裁剪,上傳服務器 實現步驟 調取本地攝像頭(get...
閱讀 2311·2021-10-11 10:59
閱讀 2602·2021-10-11 10:58
閱讀 3304·2021-09-08 09:35
閱讀 3783·2021-09-02 15:21
閱讀 1455·2019-08-30 15:53
閱讀 2608·2019-08-29 14:16
閱讀 2068·2019-08-26 14:00
閱讀 2942·2019-08-26 13:52