小程序调用百度api实现图像识别
2021/10/5 20:12:33
本文主要是介绍小程序调用百度api实现图像识别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、获取app_key和secret_key
1.1首先需要去百度智能云搜索图像识别
1.2创建应用--领取免费资源(我已经创建了应用,这个是可以免费使用一年的,测试够了)
1.3获取app_key和secret_key
点进上一张图的管理应用即可查看相应信息
二、获取token
2.1首先判断storage中是否已经有token
onLoad() { // 自定义头部导航栏文字 wx.setNavigationBarTitle({ title: '垃圾搜索' }); //获取storge中的token var that=this; wx.getStorage({ key:'expires_in', success(res){ // 获取成功,证明本地已存有相关token const newT =Date.parse(new Date())/1000/1000; // // 用当前时间和存储的时间判断,token是否已过期 if (newT > parseInt(res.data)) { // token过期,重新获取token that.getToken(); } else { // 获取本地缓存的token let token=wx.getStorageSync('access_token'); that.setData({token:token}); } },fail(){ that.getToken(); } }) },
2.2 getToken函数
// 获取token getToken:function(){ var that=this; // client_id:app_key需要自己去百度智能云创建相应的应用后获取 //client_secret:Secret Key const url = 'https://aip.baidubce.com/oauth/2.0/token'+ '?grant_type=client_credentials'+ '&client_id=YDVwACVuT2Zb2UgmIMpxoGg5&client_secret=64HL4G33rd9H0SjseOe6M8aj5jm9kLNP'; wx.request({ url:url, method: 'POST', success: res => { console.log(res) let thaRres=res.data; // 将access_token存储到storage中 wx.setStorage({ key:'access_token', data:thaRres.access_token }); wx.setStorage({ key:'expires_in', data:thaRres.expires_in }); that.setData({token:thaRres.access_token}); /* access_token: 要获取的Access Token; expires_in: Access Token的有效期(秒为单位,一般为1个月); */ }, fail: () => {} }); },
三、进行图像识别
// 点击相机图标时 cameraTap:function(){ console.log('点击相机'); var that=this; wx.chooseImage({ success: res => { wx.getFileSystemManager().readFile({ filePath: res.tempFilePaths[0], //选择图片返回的相对路径 encoding: 'base64', //编码格式 success: res => { //成功的回调 // 图片 wx.showLoading({ title: '识别中...', }) var image = res.data; // 文字识别 wx.request({ url: 'https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general?access_token='+that.data.token, data: { image: image }, header: { 'Content-Type': 'application/x-www-form-urlencoded' }, method: 'POST', success(res) { console.log(res.data) wx.hideLoading({ success: (res) => {}, }) }, fail:()=>{ wx.hideLoading(); wx.showToast({ title: '图片识别失败,请重试!', icon: 'none' }); } }) } }) } }) },
至此大功告成,返回的数据如下:
result就是最终需要的数据了!
这篇关于小程序调用百度api实现图像识别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-30实现小程序内部扫码签到和微信扫一扫签到-icode9专业技术文章分享
- 2024-06-30微信内调用扫码扫描小程序码如何解析链接-icode9专业技术文章分享
- 2024-06-30小程序码链接加密了如何解-icode9专业技术文章分享
- 2024-05-302024年最新版云开发cms开通步骤,开始开发微信小程序前的准备工作,认真看完奥!
- 2024-03-30微信小程序的网络设置,及网络请求:wx.request(OBJECT)
- 2024-01-22基于taro搭建小程序多项目框架
- 2024-01-13小程序开发:在插件市场寻找步骤条组件并二开
- 2024-01-05钉钉小程序生态—企业机器人加互动卡片,改善用户体验的开始!
- 2023-12-29【UniApp】-uni-app-打包成小程序
- 2023-12-26性能翻倍!京东亿级体量小程序优化实践