小程序开发:接入腾讯云的人像动漫化api接口
接口如下:
图片的传参方式有两种,一种是传图片的base64,一种是图片url:
我打算免费版使用base64,如果付费用户支持永久存储历史的图片记录(图片存储到腾讯云对象存储中)。
前端框架我用的uview,所以我在页面简单使用了uview的上传组件,拿到图片本地路径后再转成base64,腾讯云的api接口在云对象里调用。
上传组件:
大概界面就是这样:
接下来就是把base64数据传给接口了。
腾讯云的这个API Explorer功能还挺好用的,有请求的实例代码。
按他的实例,安装一下
tencentcloud-sdk-nodejs-ft。
切换到对应的云对象目录下,npm i tencentcloud-sdk-nodejs-f:
index.obj.js完整代码:
const tencentcloud = require("tencentcloud-sdk-nodejs-ft")
// 云对象教程:
https://uniapp.dcloud.net.cn/uniCloud/cloud-obj
// jsdoc语法提示教程:
https://ask.dcloud.net.cn/docs/#//ask.dcloud.net.cn/article/129
// 腾讯云相关的api
module.exports = {
_before: function() { // 通用预处理器
},
// 统一的发送方法
async send(data) {
let system_config = await uniCloud.callFunction({
name: "get_system_config",
data: {
config_key: 'tencent_oss'
}
})
let Config = system_config['result'][0]['config_value']
const FtClient = tencentcloud.ft.v20200304.Client
const clientConfig = {
credential: {
secretId: Config.secretId,
secretKey: Config.secretKey,
},
region: Config.region,
profile: {
httpProfile: {
endpoint: "ft.tencentcloudapi.com",
},
},
}
// 实例化要请求产品的client对象,clientProfile是可选的
const client = new FtClient(clientConfig)
return new Promise((resolve, reject) => {
client.FaceCartoonPic(data).then(
(data) => {
resolve(data)
},
(err) => {
reject(err)
}
)
})
},
// 人像动漫化接口
async faceCartoonPic(image_base64) {
let data = {
"Image": image_base64,
"RspImgType": "url"
}
return await module.exports.send(data)
},
}
调用:
const tencentcloudapi = uniCloud.importObject('tencentcloudapi')
let result = await tencentcloudapi.faceCartoonPic(this.current_img_base64)
console.log('result', result)
效果:
生成正式版后出现问题了:
本地开发却没有这个问题,应该是
tencentcloud-sdk-nodejs-ft版本问题。
在uniapp的官方论坛搜索了下,果然找到了解决方案:
https://ask.dcloud.net.cn/question/139972
更新云对象根目录的package.json后,再重新上传部署。
问题解决!
欢迎大家使用我的小程序新上线的人像转动漫功能:微信搜索《一方云知》,找到小程序后拉到最下面有一个人像转动漫的图标,点进去就可以用啦,目前是免费使用哦。
这篇文章就到这里啦!如果你对文章内容有疑问或想要深入讨论,欢迎在评论区留言,我会尽力回答。同时,如果你觉得这篇文章对你有帮助,不妨点个赞并分享给其他同学,让更多人受益。
想要了解更多相关知识,可以查看我以往的文章,其中有许多精彩内容。记得关注我,获取及时更新,我们可以一起学习、讨论技术,共同进步。
感谢你的阅读与支持,期待在未来的文章中与你再次相遇!
小程序开发:接入腾讯云的人像动漫化api接口的更多相关文章
- 微信小程序开发(二)----- 云开发
1.概念 微信小程序的云开发是腾讯云与微信团队深度合作推出的一个全新的小程序的解决方案,它提供了云函数.云数据库与云存储这三大基础能力支持,随着云开发的出现,小程序的开发者可以将服务端的部署和运营的环 ...
- 微信小程序开发(三)----- 云开发案例
1.发送请求 2.云函数中发送请求,例子request https://github.com/request/request-promise 创建云函数movielist,右键在终端打开,输入 ...
- 聚合数据董铭彦:小程序开发的兴起将带火API数据交易
2016中关村大数据日活动近日在京举办,今年新进驻北京的聚合数据受邀参与,在13日举行的大数据交易专场论坛上,聚合数据副总裁董铭彦与参会嘉宾以"共筑数据交易产业生态,共享大数据时代红利&qu ...
- $微信小程序开发实践点滴——接入Bmob后端云
Bmob后端云官网:http://www.bmob.cn/ 微信公众平台官网:https://mp.weixin.qq.com/ 微信小程序官方开发文档:https://mp.weixin.qq.co ...
- 我们的微信小程序开发
基于微信小程序的系统开发准备工作 腾讯推出微信小程序也有一段时间了,在各种行业里面也都掀起一阵阵的热潮,很多APP应用被简化为小程序的功能迅速推出,同时也根据小程序的特性推出各种独具匠心的应用,相对传 ...
- 微信小程序开发之初探
本文是以一个简单的小例子,来简要讲解微信小程序开发步骤,希望促进学习分享. 概念 微信小程序,简称小程序,缩写xcx,英文mini program.是一种不需要下载安装即可使用的应用,它实现了应用“触 ...
- 《腾讯游戏人生》微信小程序开发总结
为打通游戏人生擂台赛与线下商家的O2O衔接,同时响应时下日臻火热的微信小程序,项目团队决定也开发一款针对性的微信小程序,以此方便商家在我们平台入驻并进行擂台赛事的创建和奖励的核销,进一步推广擂台赛的玩 ...
- 【腾讯Bugly干货分享】微信小程序开发思考总结——腾讯“信用卡还款”项目实践
本文来自于腾讯bugly开发者社区,未经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/58212d0fa7a7574c4f4cc3c5 作者:peggy 小程序概述 1 ...
- 微信小程序开发平台新功能「云开发」快速上手体验
微信小程序开发平台刚刚开放了一个全新的功能:云开发. 简单地说就是将开发人员搭建微信小程序后端的成本再次降低,此文刚好在此产品公测时,来快速上手看看都有哪些方便开发者的功能更新. 微信小程序一直保持一 ...
- 小程序开发初体验,从静态demo到接入Bmob数据库完全实现
之前我胖汾公司年会.问我能不能帮忙搞个小程序方便他们进行游戏后的惩罚/抽奖使用.出了个简单的设计图.大概三天左右做了个简单的小程序.目前提交审核了.对于写过一小段时间vue来说小程序很容易上手.写法和 ...
随机推荐
- elementui中el-checkbox 选中时的详细介绍
checkbox-group 把多个checkbox管理为一组(需要注意的坑) 很多时候我们需要会遇见这样的场景. 比如用户需要选择多个值. 这个时候我们需要把多个 checkbox 放置在check ...
- 从源码中解析fabric区块数据结构(一)
从源码中解析fabric区块数据结构(一) 前言 最近打算基于fabric-sdk-go实现hyperledger fabric浏览器,其中最重要的一步就是解析fabric的上链区块.虽说fabric ...
- PaddleNLP基于ERNIR3.0文本分类以CAIL2018-SMALL数据集罪名预测任务为例【多标签】
相关项目链接: Paddlenlp之UIE模型实战实体抽取任务[打车数据.快递单] Paddlenlp之UIE分类模型[以情感倾向分析新闻分类为例]含智能标注方案) 应用实践:分类模型大集成者[Pad ...
- 盘点下4个Winform UI开源控件库
今天一起来盘点下4个Winform UI开源控件库,有.Net Framework,也有.Net Core. 1.支持.Net 7的开源UI组件框架 项目简介 这是一个基于.Net Framework ...
- 仅1cm厚!华硕发布全球最薄13.3英寸笔记本
近日,华硕发布了新款Zenbook S 13 OLED,官方称其为世界最纤薄的13.3英寸OLED笔记本电脑. 据悉,这款电脑的厚度仅有1cm,重量也仅有1kg,相较其他同尺寸的笔记本,确实更加轻薄. ...
- ASP.NET Core 6.0+Vue.js 3 实战开发(视频)
大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章或视频能成为你成长路上的垫脚石. 录制视频的体验 这是一个收费的视频,很抱歉,让您失望了. 我尝试做点收费的视频,不是因为我不 ...
- (Python)每日代码||2024.1.17||函数中给列表形参默认值时,该默认列表在函数中的改变会保留下来
def f(x,li=[1]): print(id(li)) li.append(x) print(li) f('a')#第一次调用函数 print() f('b')#第二次调用函数 print() ...
- shell 两个数组比较,得到元素的并集、交集等
linux shell 实现数组比较,取元素的并集.交集时,可以使用sort排序.uniq统计和awk数据过滤. shell 实现如下 file_list_1=("test1" & ...
- Java 将PDF转为PowerPoint (2行代码)
通过编程实现PDF转PPT的功能,可以自动化转换过程,减少手动操作的工作量,并根据需要进行批量转换.将PDF文件转换为PPT文档后,可以利用PPT的丰富功能和动画效果,达到更好的演示效果. 在Java ...
- NOI 2021 补全记录
来补题了昂. D1T1 轻重边 对于原树进行重链剖分,使用一颗线段树维护每一条重边是否时"重边",然后对于轻边,在父亲出维护最后一次通过 \(1\) 操作清空"重边&qu ...