原生小程序 获取手机号并进行存储到mysql数据库

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 原生小程序 获取手机号并进行存储到mysql数据库

前端小程序代码(原生小程序)

index.wxml(前端页面)
<!-- index.wxml -->
 
<view class="container">
  <button bindtap="getPhoneNumber">获取手机号</button>
</view>

index.js(前端逻辑)

// index.js
 
Page({
  data: {
    phoneNumber: ''
  },
 
  getPhoneNumber() {
    wx.login({
      success: (res) => {
        if (res.code) {
          wx.request({
            url: 'https://your-backend-url.com/getPhoneNumber',
            method: 'POST',
            data: {
              code: res.code
            },
            success: (response) => {
              console.log('获取手机号成功:', response.data.phoneNumber);
              this.setData({
                phoneNumber: response.data.phoneNumber
              });
              // 这里可以将手机号上传到后端保存到数据库
              wx.showToast({
                title: '获取手机号成功',
                icon: 'success'
              });
            },
            fail: (error) => {
              console.error('获取手机号失败:', error);
              wx.showToast({
                title: '获取手机号失败',
                icon: 'none'
              });
            }
          });
        } else {
          console.error('登录失败!' + res.errMsg);
        }
      }
    });
  }
});

后端Java Spring Boot代码

Controller
import org.springframework.web.bind.annotation.*;
 
@RestController
@RequestMapping("/api")
public class PhoneNumberController {
 
    @PostMapping("/getPhoneNumber")
    public ResponseEntity<?> getPhoneNumber(@RequestBody String code) {
        // 根据 code 获取用户手机号的逻辑,这里假设已经实现了获取手机号的方法
        String phoneNumber = someService.retrievePhoneNumber(code);
        
        // 假设 phoneNumber 是从小程序获取到的手机号
        
        // 将手机号保存到数据库
        boolean saved = someService.savePhoneNumber(phoneNumber);
        
        if (saved) {
            return ResponseEntity.ok().body("{\"phoneNumber\": \"" + phoneNumber + "\"}");
        } else {
            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).build();
        }
    }
}

Service

import org.springframework.stereotype.Service;
 
@Service
public class SomeService {
 
    public String retrievePhoneNumber(String code) {
        // 实现根据 code 获取用户手机号的逻辑,这里可以调用微信小程序登录接口获取手机号
        // 该部分代码需根据具体的微信登录接口来实现
        // 示例中直接返回一个固定的手机号
        return "1234567890";
    }
    
    public boolean savePhoneNumber(String phoneNumber) {
        // 实现保存手机号到数据库的逻辑,这里假设使用JPA或者MyBatis操作数据库
        // 示例中直接打印保存成功信息,实际应用中需实现具体的数据库操作
        System.out.println("Saving phone number to database: " + phoneNumber);
        // 假设保存成功
        return true;
    }
}

配置文件 application.properties

# application.properties
 
# 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name
spring.datasource.username=your_username
spring.datasource.password=your_password
 
# 其他Spring Boot配置

注意事项

安全性考虑:在实际应用中,应确保通信安全,例如使用HTTPS,同时在小程序和后端实现身份验证和授权机制。


数据库连接:请根据实际情况配置正确的数据库连接信息,并确保后端可以正常连接到MySQL数据库。


小程序设置:在微信公众平台设置小程序的请求域名,确保可以访问后端接口。


这些代码片段可以帮助你实现从原生小程序获取手机号并将其存储到MySQL数据库的功能。请根据实际情况调整和完善代码。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
存储 关系型数据库 MySQL
MySQL——数据库备份上传到阿里云OSS存储
MySQL——数据库备份上传到阿里云OSS存储
849 0
|
关系型数据库 MySQL Java
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
|
存储 关系型数据库 MySQL
mysql 使用变量存储中间结果的写法
mysql 使用变量存储中间结果的写法
|
存储 关系型数据库 MySQL
【免费动手教程上线】阿里云RDS MySQL推出大容量高性能存储:高性能本地盘(最高16TB存储空间)、高性能云盘(最高64TB存储空间)
阿里云RDS MySQL提供高性能本地盘与高性能云盘等存储方案,满足用户大容量、低延迟需求。高性能本地盘单盘最大16TB,IO延时微秒级;高性能云盘兼容ESSD特性,支持IO性能突发、BPE及16K原子写等能力。此外,阿里云还提供免费动手体验教程,帮助用户直观感受云数据库 RDS 存储性能表现。
|
存储 关系型数据库 MySQL
MySQL进阶突击系列(09)数据磁盘存储模型 | 一行数据怎么存?
文中详细介绍了MySQL数据库中一行数据在磁盘上的存储机制,包括表空间、段、区、页和行的具体结构,以及如何设计和优化行数据存储以提高性能。
|
JSON 小程序 JavaScript
原生微信小程序笔记完整总结
原生微信小程序笔记完整总结
640 1
|
存储 关系型数据库 MySQL
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
507 2
|
机器学习/深度学习 人工智能 JSON
微信小程序原生AI运动(动作)检测识别解决方案
近年来,疫情限制了人们的出行,却推动了“AI运动”概念的兴起。AI运动已在运动锻炼、体育教学、线上主题活动等多个场景中广泛应用,受到互联网用户的欢迎。通过AI技术,用户可以在家中进行有效锻炼,学校也能远程监督学生的体育活动,同时,云上健身活动形式多样,适合单位组织。该方案成本低、易于集成和扩展,已成功应用于微信小程序。
|
存储 SQL 关系型数据库
MySQL 存储函数及调用
MySQL 存储函数及调用
845 3

热门文章

最新文章

推荐镜像

更多