1. Cree un servidor HTTP local
1. Utilice Node.js para crear un servidor HTTP localmente
1) Descargue e instale Node.js
Sitio web: https://nodejs.org/en
El lado derecho es la versión de mantenimiento a largo plazo y el lado izquierdo es la versión para usuarios pioneros. Se recomienda descargar la versión de mantenimiento a largo plazo.
2) Una vez completada la instalación, cree una carpeta localmente. El nombre de la carpeta es arbitrario. El nombre de mi carpeta es nodeMysqlDemo.
3) Abra la línea de comando
Busque la palabra clave de nodo y abra el símbolo del sistema de node.js como administrador.
4) Ingrese a la unidad D e ingrese a la carpeta que acaba de crear
5) Ingrese los siguientes comandos en secuencia
[1] Inicialice el proyecto y el archivo de configuración package.json se creará automáticamente.
npm init -y
[2] Instale el marco Express para crear rápidamente servidores HTTP
npm install express --save
[3] Instale nodemon para monitorear las modificaciones de archivos
npm install nodemon -g
[4] Instale el paquete de software mysql
npm install mysql --save
Una vez que la operación sea exitosa, estos archivos estarán en la carpeta.
6) Cree el archivo server.js en este directorio
Si no sabe cómo crearlo, primero puede crear el archivo de texto server.txt y luego cambiar el sufijo a js.
6) Abra el archivo server.js, escriba el siguiente código del lado del servidor y guárdelo
const express=require('express')
const bodyParser =require('body-parser')
const app=express()
const mysql = require('mysql')
app.use(bodyParser.json())
//处理post请求
app.post('/',(req,res) => {
console.log(req.body)
res.json(req.body)
})
app.post('/show',(req,res)=>{
console.log(req.body.name)
const a=req.body.name
var connection=mysql.createConnection({
host:'localhost',
user:'数据库用户名',
password:'数据库密码',
database:'数据库名称'
})
connection.connect();
connection.query("select * from tb_tags where f_tagID='"+a+"'",function(error,results,fields){
if(error) throw console.error;
res.json(results)
console.log(results)
})
connection.end();
})
app.get('/',(req,res)=>{
var connection = mysql.createConnection({
host:'localhost',
user:'数据库用户名',
password:'数据库密码',
database:'数据库名称'
});
connection.connect();
//查找所有的人物名字返回给客户端。其实没必要(测试用的)
connection.query('select * from tb_tags',function(error,results,fields){
if(error) throw error;
res.json(results)
// console.log(results)
})
connection.end();
})
app.listen(3000,()=>{
console.log('server running at http://127.0.0.1:3000')
})
7) Finalmente ejecute el archivo en la línea de comando para iniciar el servidor.
2. El subprograma WeChat obtiene el contenido de la base de datos local
1) Parte del código para obtener datos del mini programa.
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
var that = this
wx.request({
url: 'http://127.0.0.1:3000/',
success: function (res) {
console.log(res.data)
// that.setData({ names: res.data })
}
})
},
2) Desactivar la configuración de verificación de nombre de dominio
Para los proyectos lanzados oficialmente, el miniprograma requiere que el nombre de dominio del servidor se agregue en el fondo de administración del miniprograma. El nombre de dominio debe estar registrado en ICP y ser compatible con los protocolos HTTPS y WSS. Para los desarrolladores, para facilitar el aprendizaje, pueden agréguelo en las herramientas de desarrollo de WeChat. Desactive estas verificaciones para usar un servidor local para probar la funcionalidad de la red. Haga clic en el botón de detalles en la barra de herramientas, busque la opción "No verificar el nombre de dominio legal, la vista web (nombre de dominio comercial), la versión TLS y el certificado HTTPS" y verifíquela. -------- Del libro "Práctica de desarrollo de mini programas WeChat".
3) Ejecute el programa y obtenga con éxito los datos de la base de datos local.
Errores comunes:
la base de datos no está conectada, lo que indica Error: ER_NOT_SUPPORTED_AUTH_MODE: El cliente no admite el protocolo de autenticación
Solución: https://blog.csdn.net/qq_34235767/article/details/127617282