一、简介
现在陌陌小程序越来越受欢迎。 相信很多人都了解过陌陌小程序或者通过各种渠道尝试开发过。 笔者一开始对开发陌陌小程序很感兴趣,所以现在用这个博客来记录一下自己之前的一些开发经验和一些想法。
二、主要内容
Springboot前端架构 创建小程序项目 创建小程序api 调用后台resetful socket 编译小程序 调用后台socket linux下部署免费https应用
3.微信小程序项目建立
这些基本的东西我就不过多介绍了。 刚开始开发时,通常没有自己的服务器和域名,所以本地编译时,将“No Calibrate Domain Name Security”勾选上。
至于Momo小程序的组件网站和小程序合并了,即后端页面的开发,希望大家对Momo开发平台有耐心、认真。
成分:
应用程序编程接口:
四、后端解读
我主要使用java进行前端编译。 当然,熟悉其他开发语言的人也可以使用其他语言来开发前端。 现在我会用java写一个前端API的解释。 主要框架是springboot网站和小程序合并了,开发工具myeclipse,服务器阿里云服务器。
创建maven项目并导入相关依赖:
pom.xml 依赖项
org.springframework.boot
spring-boot-starter-parent
1.5.9.RELEASE
org.springframework.boot
spring-boot-starter-freemarker
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-tomcat
org.apache.tomcat.embed
tomcat-embed-jasper
复制
在配置文件src/main/resources/下创建application.properties文件,用于更改一些配置参数等。
#jsp支持
spring.mvc.view.suffix=.jsp
spring.mvc.view.prefix=/WEB-INF/jsp/
#this is set port
#server.port=80
server.port=443
#添加ssl证书
#ssl证书文件名
server.ssl.key-store=classpath:xxxxxxx.pfx
server.ssl.key-store-password=xxxxxxxx
server.ssl.keyStoreType=xxxxxxxx
复制
实际项目中,可能会涉及到数据库,必须集成mybatis。 文章中我只做了测试,没有使用数据库。
首先创建springboot的入口程序:在app.class下粘贴代码:
@ComponentScan(basePackages= "com.bin")//添加扫包@ComponentScan(basePackages= "")
@EnableAutoConfiguration
public class App{
//启动springboot
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
复制
启动项目时右键运行。
编写一个测试控制器,用于Momo小程序和java前端之间的通信,控制器代码如下:
@RestController
@SpringBootApplication
public class ControllerText {
@RequestMapping("getUser")
public Map getUser(){
System.out.println("微信小程序正在调用。。。");
Map map = new HashMap();
List list = new ArrayList();
list.add("zhangsan");
list.add("lisi");
list.add("wanger");
list.add("mazi");
map.put("list",list);
System.out.println("微信小程序调用完成。。。");
return map;
}
@RequestMapping("getWord")
public Map getText(String word){
Map map = new HashMap();
String message = "我能力有限,不要为难我";
if ("后来".equals(word)) {
message="正在热映的后来的我们是刘若英的处女作。";
}else if("微信小程序".equals(word)){
message= "想获取更多微信小程序相关知识,请更多的阅读微信官方文档,还有其他更多微信开发相关的内容,学无止境。";
}else if("西安工业大学".equals(word)){
message="西安工业大学(Xi'an Technological University)简称”西安工大“,位于世界历史名城古都西安,是中国西北地区唯一一所以兵工为特色,以工为主,理、文、经、管、法协调发展的教学研究型大学。原中华人民共和国兵器工业部直属的七所本科院校之一(“兵工七子”),陕西省重点建设的高水平教学研究型大学、陕西省人民政府与中国兵器工业集团、国防科技工业局共建高校、教育部“卓越工程师教育培养计划”试点高校、陕西省大学生创新能力培养综合改革试点学校。国家二级保密资格单位,是一所以"军民结合,寓军于民"的国防科研高校。";
}
map.put("message", message);
return map;
}
@RequestMapping("")
public String getText(){
return "hello world";
}
}
复制
至此,简单的前端框架和测试就基本完成了。
说明:@RestController和@Controller注解的区别@RestController相当于两个注解,可以实现前端在后端页面(网页)中获取的数据为json字符串。 陌陌小程序与后台之间的数据传输是json消息的形式。 所以这也是选择springboot框架来开发小程序前端的主要原因之一。 我们可以进行小程序的前端开发。
5、小程序发起网络请求
完成小程序的前端开发后,下一步就是由小程序端发起网络请求。
我们以一个简单的按键请求数据为例:
wxml 文件
姓名:{{item}}
复制
js文件
/**
* 页面的初始数据
*/
data: {
list: '',
word: '',
message:''
},
houduanButton1: function () {
var that = this;
wx.request({
url: 'http://localhost:443/getUser',
method: 'GET',
header: {
'content-type': 'application/json' // 默认值
},
success: function (res) {
console.log(res.data)//打印到控制台
var list = res.data.list;
if (list == null) {
var toastText = '数据获取失败';
wx.showToast({
title: toastText,
icon: '',
duration: 2000
});
} else {
that.setData({
list: list
})
}
}
})
}
复制
调用的主要api是wx.request。 如果想了解详细介绍,可以前往微信公众平台()。
接下来以搜索类型请求为例:
wxml 文件:
{{message}}
复制
js文件:变量的定义见前面的js文件
//获取输入框的内容
houduanTab_input: function (e) {
this.setData({
word: e.detail.value
})
},
// houduanButton2的网络请求
houduanButton2: function () {
var that = this;
wx.request({
url: 'http://localhost:443/getWord',
data:{
word: that.data.word
},
method: 'GET',
header: {
'content-type': 'application/json' // 默认值
},
success: function (res) {
console.log(res.data)//打印到控制台
var message = res.data.message;
if (message == null) {
var toastText = '数据获取失败';
wx.showToast({
title: toastText,
icon: '',
duration: 2000
});
} else {
that.setData({
message: message
})
}
}
})
}
复制
至此,简单的Momo小程序与java前端的通信就完成了。
现在您可以启动前端项目并在Momo开发工具上进行测试。
展现功效:
那么至此小程序的前端通信就完成了。
六、ps应用
事实上,它不是一个应用程序。 订购域名后,您可以申请免费的ssl证书。 上述配置文件application.properties中有证书配置,可以直接将证书的pfx文件添加到前端项目中。
7.购买服务器并部署前端API代码
对于springboot项目,我建议打开jar直接部署在服务器上。 只需要在服务器上安装对应版本的jdk即可。 项目部署命令:
我订购了阿里云的轻量级应用服务器部署。 它更实惠。
运行命令: nohup java -jar helloworld.jar &
复制
nohup的意思是不挂服务,而且是永久的意思,除非重启云服务器,否则不起作用; 最后一个&表示命令执行后会生成日志文件nohup.out。 当然也可以使用java -jar helloworld.jar。
8. 源代码
百度云链接:
提取码:c7yf
PS:如果你觉得我的分享不错,欢迎点赞观看。
结尾