搭建微信小程序(AMD 8代)

简介: 本教程提供在阿里云云服务器ECS上基于CentOS 7.9操作系统搭建小程序服务端的指引。

搭建微信小程序(AMD 8代)

1. 实验资源方式简介及开始实验

云起实验室实验资源方式介绍

云起实验室支持个人账户资源一种实验资源方式。

个人账户资源

使用您个人的云资源进行操作,资源归属于个人。

所有实验操作将保留至您的账号,请谨慎操作。

平台仅提供手册参考,不会对资源做任何操作。

说明:使用个人账户资源,在创建资源时,可能会产生一定的费用,请您及时关注相关云产品资源的计费概述。

准备开始实验

在实验开始前,请您选择个人账户资源,单击确认开启实验

2. 准备环境和资源

开始教程前,请您根据以下步骤准备环境和资源。

前往云服务器ECS售卖页面

云服务器购买页面,参考如下说明配置参数,未提及的配置保持默认或按需修改,然后选中右侧的《云服务器ECS服务条款》|《云服务器ECS退订说明》,单击确认下单

参数

示例

付费类型

包年包月

地域

华东1(杭州)

本教程所使用的ecs.g8a.large实例规格目前仅在华东1(杭州)可用区K、华北2(北京)可用区L和华东2(上海)可用区M开放,您可任意选择其中一地域可用区。

网络及可用区

专有网络

根据实际情况选择您的VPC网络和交换机。交换机需要选择可用区K的交换机。

若没有可使用的VPC网络和交换机,可单击下方的创建专有网络创建交换机

实例

规格族:AMD 通用型 g8a

规格:ecs.g8a.large

vCPU:2 vCPU

内存:8 GiB

镜像

Alibaba Cloud Linux 3.2104 LTS 64位。

本教程以Alibaba Cloud Linux 3.2104 LTS 64位操作系统为例,如果您购买的ECS服务器使用了其他版本的操作系统,操作可能和本教程略有差异。

公网IP

开启分配公网IPv4地址

带宽计费模式

按使用流量

本教程以按使用流量为例,您可根据实际情况选择按固定带宽或按使用流量。

带宽峰值

5Mbps

安全组

选择您的安全组,若没有可选择新建安全组。

登录凭证

自定义密码

登录密码

自定义设置登录密码

确认密码

再次输入登录密码

购买时长

1个月

本教程以1个月为例,您可根据实际情况选择购买时长

在创建成功对话框中,单击管理控制台

实例页面,等待状态变为运行中后,即可使用该云服务器ECS。

3. 一键配置

准备好资源后,您可以通过一键配置快速完成资源配置或应用搭建。一键配置基于阿里云资源编排服务ROS(Resource Orchestration Service)实现,旨在帮助开发者通过IaC(Infrastructure as Code)的方式体验资源的自动化配置。如需查看软件版本、安装命令等配置的具体信息,可查看教程的手动配置版。模板完成的内容包括:

为ECS实例配置安全组。

创建角色并绑定到ECS实例。

安装Nginx服务并写入配置。

安装uWSGI Server并写入配置。

安装Python环境并写入代码。

操作步骤

打开一键配置模板链接前往ROS控制台,系统自动打开使用新资源创建资源栈的面板,并在模板内容区域展示YAML文件的详细信息。

ROS控制台默认处于您上一次访问控制台时的地域,请根据您创建的资源所在地域修改地域。确认好地域后,保持页面所有选项不变,单击下一步进入配置模板参数页面。

配置模板参数页面修改资源栈名称,选择您创建的ECS实例,并设置要创建的用于ECS实例扮演的角色名称。填写完所有必选信息并确认后单击创建开始一键配置。

当资源栈信息页面的状态显示为创建成功时表示一键配置完成。

4. 注册微信小程序

在开发小程序之前,您需要先注册微信小程序。

进入小程序页面,单击前往注册,根据指引填写信息和提交相应的资料,完成账号申请。

使用申请的微信公众平台账号登录小程序后台,单击开发管理> 开发设置,可以看到小程序的AppID,请记录AppID,后续操作中需要使用。

5. 安装小程序开发环境并创建项目

启动好后端服务后,我们接下来要开发开发小程序。先安装小程序开发环境。

安装Node.js开发环境,请到Node.js页面下载并安装Node.js环境。

下载并安装微信小程序开发工具。详细信息请参见开发工具下载

打开小程序开发工具,使用微信扫码登录。

单击加号创建微信小程序示例项目。

参考以下填写项目信息,最后单击新建

项目名称:例如ECSAssistant。

目录:例如D:\workspace\wechat\ECSAssistant。

AppID:小程序的唯一标识,从小程序控制台获取。

开发模式:小程序。

后端服务:不使用云服务。

配置项目允许访问非HTTPS域名。在顶部配置栏,选择设置>项目设置,在本地设置页签,选中不校验合法域名、web-view(业务域名)、TLS版本一级HTTPS证书。

6. 开发小程序

安装好开发环境后,我们来编写小程序代码。

生成的的小程序示例项目结构如下。

可以看到小程序的项目结构中有三种前缀为app的文件,它们定义了小程序的一些全局配置。

app.json 应用配置。用于配置小程序的页面列表、默认窗口标题、导航栏背景色等。更多信息,请参见全局配置

app.acss 应用样式。定义了全局样式,作用于当前小程序的所有页面。

app.js 应用逻辑。可配置小程序的生命周期,声明全局数据,调用丰富的API。

小程序所有的页面文件都在pages/路径下,页面文件有四种文件类型,分别是.ts、.wxml、.wxss、和.json后缀的文件。相比全局配置文件,页面配置文件只对当前页面生效。其中.wxml文件定义了当前页面的页面结构。小程序中的所有页面都需要在app.json文件中声明。更多信息,请参见代码构成

此外,项目顶层还有开发工具配置文件project.config.json和爬虫索引文件sitemap.json

ECSAssistant
├── app.js
├── app.json
├── app.wxss
├── pages
│ ├── index
│ │ ├── index.ts
│ │ ├── index.json
│ │ ├── index.wxml
│ │ └── index.wxss
│ └── logs
│     ├── logs.js
│     ├── logs.json
│     ├── logs.wxml
│     └── logs.wxss
├── project.config.json
└── sitemap.json

编辑app.json文件,将小程序页面Title修改为ECS小助手,修改后的app.json文件内容如下。

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
  ],
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "ECS小助手",
    "navigationBarTextStyle":"black"
  },
  "style": "v2",
  "sitemapLocation": "sitemap.json"
}

编辑pages/index/index.wxss文件,定义index的页面样式,修改后的index.wxss文件内容如下。

.search-input {
  position: relative;
  margin-bottom: 50rpx;
  padding-left:80rpx;
  line-height: 70rpx;
  height: 80rpx;
  box-sizing: border-box;
  border: 2px solid #ff8f0e;
  border-radius: 100rpx;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: border 0.2s;
}
.resultView {
  margin-top: 70rpx;
}
.result {
  position: relative;
  left: 30rpx;
  display: list-item;
  font-size: small;
}

编辑pages/index/index.ts文件,定义搜索框的失去焦点事件,修改后的index.ts文件内容如下。

说明:将代码中<ECS_PUBLIC_IP>换成您刚刚创建的服务器的公网IP。

Page({
  data: {
    queryResult: null,
    showView: 'false',
  },
  bindblur: function(e) {
    let that = this;
    wx.request({
      url: 'http://<ECS_PUBLIC_IP>/ecs/getServerInfo',
      method: 'GET',
      data: {
        instanceId: e.detail.value
      },
      success(res) {
        if(res.statusCode == 200){
          that.setData({
            queryResult: res.data,
            showView: !that.data.showView,
          });
        }else{
          that.setData({
            showView: 'false',
          });
          wx.showToast({
            title: '请输入你的ECS实例ID',
            duration: 1500,
            icon: 'none',
            mask: true
          })
        }
      }
    })
  }
})

编辑pages/index/index.wxml文件,编写展示界面,修改后的index.wxml文件内容如下。

<view class='container'>
  <input placeholder='请输入你的ECS实例ID' class='search-input' value='{{ inputValue }}' bindblur='bindblur'></input>
  <view class='resultView' hidden='{{ showView }}'>
    <text class='result'>CPU数:{{queryResult.Cpu}} 核</text>
    <text class='result'>内存大小:{{queryResult.Memory}} MB</text>
    <text class='result'>操作系统:{{queryResult.OSName}}</text>
    <text class='result'>实例规格:{{queryResult.InstanceType}}</text>
    <text class='result'>公网IP地址:{{queryResult.IpAddress}}</text>
    <text class='result'>网络带宽:{{queryResult.InternetMaxBandwidthOut}} MB/s</text>
    <text class='result'>在线状态:{{queryResult.instanceStatus == 'Running' ? '运行中':'已关机'}}</text>
  </view>
</view>

保存后,编辑器会自动刷新。看到如下界面,表示小程序运行成功了。

7. 完成

完成以上操作后,您已经成功部署了服务端程序,并且在本地开发好了小程序。

您可以登录ECS控制台,复制刚刚创建的ECS实例ID,输入到小程序输入框中,就可以看到结果了。

8. 清理及后续

清理

如果无需继续使用实例,可以登录ECS控制台,找到目标实例,在操作列单击,搜索并单击释放设置,根据界面提示释放实例。

如果需要继续使用实例,请关注实例到期时间,并及时续费,包年包月实例到期会自动释放,释放实例的同时释放数据。到期未续费的实例会因欠费而被自动停机,停机15天内实例将保留,15天后实例和数据都将被自动释放。

后续

如果您期望上线您的小程序,您需要做下面几件事:

申请域名,可以参考域名注册基本流程如何注册阿里云域名

申请SSL证书,并配置到服务器上,可以参考申请免费DV单域名试用证书

上传小程序并提交审核,可以参考小程序发布上线

待审核通过后,手动上线小程序,就可以在微信客户端中查看和使用小程序了。

实验链接:https://developer.aliyun.com/adc/scenario/f88bc47ca0fd49f4b3b059d9474692c3

相关文章
|
JSON 小程序 JavaScript
微信小程序入门级
微信小程序入门级
81 0
|
6月前
|
PHP
HuoCMS|免费开源可商用CMS建站系统HuoCMS 2.0下载(thinkphp内核)
HuoCMS|免费开源可商用CMS建站系统HuoCMS 2.0下载(thinkphp内核)
168 2
|
6月前
|
小程序
uniapp 微信小程序登录 新手专用 引入即可
uniapp 微信小程序登录 新手专用 引入即可
62 0
|
缓存 小程序 JavaScript
微信小程序开发之入门级02(带你进一步了解微信小程序开发)
微信小程序开发之入门级02(带你进一步了解微信小程序开发)
105 0
|
JSON 小程序 JavaScript
微信小程序 | 小程序配置和架构
微信小程序 | 小程序配置和架构
|
数据采集 小程序 数据挖掘
个人开发者如何申请微信小程序
从午饭后开始下载开发工具、看文档,花了一下午开发完,晚上又折腾了下服务器域名配置的小问题,然后提交审核。要等审核完才能对外发布。
|
供应链 小程序
云开发版的微信商城小程序第三章
云开发版的微信商城小程序第三章
122 0
|
存储 小程序 前端开发
微信小程序云开发|个人博客小程序
微信小程序云开发|个人博客小程序
261 0
|
小程序 前端开发 开发工具
云开发版的微信商城小程序第一章
云开发版的微信商城小程序第一章
166 0