【移动应用开发技术】怎么撸出春节智能迎春对联小程序_第1页
【移动应用开发技术】怎么撸出春节智能迎春对联小程序_第2页
【移动应用开发技术】怎么撸出春节智能迎春对联小程序_第3页
【移动应用开发技术】怎么撸出春节智能迎春对联小程序_第4页
【移动应用开发技术】怎么撸出春节智能迎春对联小程序_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【移动应用开发技术】怎么撸出春节智能迎春对联小程序

这篇文章主要讲解了“怎么撸出春节智能迎春对联小程序”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着在下的思路慢慢深入,一起来研究和学习“怎么撸出春节智能迎春对联小程序”吧!准备工作掌握语言:微信小程序语言技术要点:①微信小程序云开发②百度AI智能创作平台-智能写春联游戏流程与规则游戏流程:可以通过点击随机春联和指定姓氏来获取所想要的春联~名词解释:①随机春联,随机显示一对春联。②指定姓氏:输入你的姓氏,生成对联。部署步骤1️⃣注册微信小程序流程,开启云开发2️⃣注册百度AI平台——》控制台——》创建自然语言处理的应用——》百度认证授权,拿到token——》再拿token去智能春联API接口3️⃣需要修改的地方:APPID(用微信开发者工具打开时输入的APPID)、百度token(在couplet文件夹里的index.js文件)、云开发环境env(在app.js文件)逻辑讲解与核心代码1随机春联的逻辑讲解由于百度提供的智能春联API接口是需要传参的,所以我们可以提前预备一个小型数据集合,通过点击的时候能进行传值,然后返回需要的对联。因此,是收集了部分迎春过年的字词、词语。var

RANDOM_TEXT_LIST

=

["虎",

"虎年",

"迎春",

"春节",

"过年",

"年兽",

"过春节",

"初一",

"年初",

"红红火火",

"红火",

"开心",

"开开心心",

"健康",

"健健康康",

"长寿",

"平安",

"平平安安",

"家庭",

"家庭和睦",

"和睦",

"子子孙孙",

"勤劳",

"福气",

"福",

"致富",

"富裕",

"富",

"合家欢喜",

"合家",

"欢喜",

"喜庆",

"喜",

"囍",

"生意兴隆",

"恭喜发财",

"大富大贵",

"富贵",

"富裕",

"丰年",

"子孙满堂",

"心欢喜",

"人间喜",

"灯火",

"灯笼",

"烟花",

"爆竹"]2指定姓氏的逻辑讲解这个和随机春联是类似的逻辑,只不过需要用户输入姓氏,但是用到的api接口有点拉胯,输入单单一个姓的字,输出的内容是有点不合理。所以在这处理办法是拼接加一个“家”字进去,比如输入姓氏:柳,传值的就是柳家;输入的是张,就是张家...

ok:

function

()

{

var

text

=

this.data.textV

if

(!text

||

text.length

>

4)

{

wx.showToast({

title:

'姓氏暂不支持超过4个字哦!',

icon:

'none'

})

return;

}

this.getCoupletByTxt(text

+

"家")

//

智能写对联

this.setData({

showModal:

false

})

},3核心代码经过前面的逻辑讲解,你可能就知道,核心代码是公共调用的方法。(Bingo~你猜对了)随机春联调用的方法//

随机春联的调用方法

bindGetRandomCouplet()

{

let

that

=

this

var

num

=

parseInt(Math.random()

*

(MAX_NUM

-

MIN_NUM

+

1)

+

MIN_NUM,

10);

//

生成[n,m]的随机整数

that.getCoupletByTxt(RANDOM_TEXT_LIST[num])

//

智能写对联

},指定姓氏调用的方法//

随机春联的调用方法

ok:

function

()

{

var

text

=

this.data.textV

if

(!text

||

text.length

>

4)

{

wx.showToast({

title:

'姓氏暂不支持超过4个字哦!',

icon:

'none'

})

return;

}

this.getCoupletByTxt(text

+

"家")

//

智能写对联

this.setData({

showModal:

false

})

},调用智能春联的公共方法

//

智能写对联(API接口来源,参考百度-语言处理技术-智能创作平台-智能写对联:/ai-doc/NLP/Ok53wb6dh)

getCoupletByTxt(text)

{

let

that

=

this

console.log(text)

//

字符串(限5字符数以内)即作诗的主题

if

(!text

||

text.length

>

5)

{

wx.showToast({

title:

'主题限制5个字以内哦!',

icon:

'none'

})

return;

}

wx.cloud.callFunction({

name:

'couplet',

data:

{

action:

'getCoupletByTxt',

text

}

}).then(res

=>

{

console.log(res)

if

(res.result.error_code)

{

if

("17".indexOf(res.result.error_code)

!=

-1)

{

wx.showToast({

title:

'调用次数用完啦,点击右下角小电话,联系开发者充次钱充次数啦!',

icon:

'none',

duration:

3000,

})

}

else

{

wx.showToast({

title:

'当前对联不太行,请重试!',

icon:

'none'

})

}

return;

}

that.setData({

couplets:

res.result.couplets

})

})

},云函数调用的公共方法//

注:先看readme.md文件

//

对联生成请求

const

cloud

=

require('wx-server-sdk')

var

rp

=

require('request-promise')

cloud.init({

env:

cloud.DYNAMIC_CURRENT_ENV

})

const

DB

=

cloud.database()

//

天行数据的KEY

var

TIAN_XING_KEY

=

''

//

天行数据的接口API

var

TIAN_XING_API

=

'/duilian/index'

//

百度Token

var

BAI_DU_ACCESS_TOKEN

=

''

//

这里需要自行去申请咯~

//

百度接口api

var

BAI_DU_API

=

[

"/rpc/2.0/creation/v1/poem",

//

智能写诗

"/rpc/2.0/creation/v1/couplets"

//

智能写对联

]

//

云函数入口函数

exports.main

=

async

(event,

context)

=>

{

var

{

action,

text

}

=

event

var

data

=

{}

switch

(action)

{

case

'getPoemByTxt':

{

data.text

=

text

if

(text

==

"")

return

{

message:

'缺少参数text'

}

//

智能写诗(API接口来源,参考百度-语言处理技术-智能创作平台-智能写诗:/ai-doc/NLP/ak53wc3o3)

return

new

Promise((resolve,

reject)

=>

{

try

{

rp({

method:

'POST',

headers:

{

"content-type":

"application/json",

},

body:

JSON.stringify(data),

url:

BAI_DU_API[0]

+

'?access_token='

+

BAI_DU_ACCESS_TOKEN,

//

text必要参数,写诗的主题内容

},

function

(error,

response,

body)

{

if

(error)

{

return

reject(error);

}

return

resolve(JSON.parse(body));

})

}

catch

(e)

{

return

reject(e)

}

});

}

case

'getCoupletByTxt':

{

data.text

=

text

if

(text

==

"")

return

{

message:

'缺少参数text'

}

//

智能写对联(API接口来源,参考百度-语言处理技术-智能创作平台-智能写对联:/ai-doc/NLP/Ok53wb6dh)

return

new

Promise((resolve,

reject)

=>

{

try

{

rp({

method:

'POST',

headers:

{

"content-type":

"application/json",

},

body:

JSON.stringify(data),

url:

BAI_DU_API[1]

+

'?access_token='

+

BAI_DU_ACCESS_TOKEN,

//

text必要参数,对联的主题内容

},

function

(error,

response,

body)

{

if

(error)

{

return

reject(error);

}

return

resolve(JSON.parse(body));

})

}

catch

(e)

{

return

reject(e)

}

});

}

case

'getRandomCouplet':

{

//

随机一对对联(无横批)(API接口来源,天行数据:/console/)

return

new

Promise((resolve,

reject)

=>

{

rp({

url:

TIAN_XING_API

+

'?key='

+

TIAN_XING_KEY,

method:

"POST",

json:

true,

},

function

(error,

response,

body)

{

console.log("响

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论