ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

小程序开发特辑—MD5工具

2021-06-19 23:02:50  阅读:200  来源: 互联网

标签:npm 微信 程序开发 特辑 mainRef MD5 data md5


 本文是小程序开发特辑的第二篇,基于小编开发的微信小程序—“工具百宝箱”继续介绍如何进行小程序开发。今天介绍第一个工具:MD5。

在这里插入图片描述

 MD5的全称为MD5信息摘要算法,一种被广泛使用的密码散列函数。MD5能够对数据进行运算,得到固定长度的hash值,常用于下载文件比对等场景。注意,MD5是可以被破解的,最好不要用在加密的场景里。

 MD5工具使用了npm第三方包,小程序安装第三方npm包的方法如下:

  1. 在小程序根目录下的package.json文件中加入依赖的第三方包并执行npm install。
{
  "dependencies": {
    "qrcode-generator": "1.4.4",
    "md5": "2.3.0"
  }
}
  1. 在小程序开发工具中选择:工具—构建npm即可。

 构建完成后,在MD5工具的js里,引入md5包:

const md5Tool = require('md5');

 用户输入文本之后,点击按钮,立即生成md5。代码如下:

<view class="weui-flex__item">
        <a class="weui-btn weui-btn_mini  weui-btn_primary button-align weui-btn_loading" wx:if="{{generating}}"><text
            class="weui-primary-loading weui-primary-loading_transparent"><i
              class="weui-primary-loading__dot"></i></text>加密</a>
        <a wx:else class="weui-btn weui-btn_mini  weui-btn_primary button-align" bindtap="doEncrypt">加密</a>
</view>
doEncrypt: function () {
    if (!this.data.textValue) {
      util.handleToast("请输入需要加密的内容", this)
    } else {
      let mainRef = this;
      mainRef.setData({
        generating: true,
        encrypt:''
      }, () => {
        util.userInputChecker(mainRef.data.textValue, mainRef, () => {
          let m = md5Tool(mainRef.data.textValue)
          if (mainRef.data.pickerIndex == 1) {
            m = m.toUpperCase();
          }
          mainRef.setData({
            encrypt: m
          })
        }, () => {
          mainRef.setData({
            generating: false
          })
        })
      })
    }
  }

 微信要求小程序对用户的输入进行内容合规检查,代码里面userInputChecker会请求后端的文本检测服务。这是一个用nodejs搭建的服务,里面涉及微信的登录和调用微信内容检查接口。小程序编程系列会涵盖这部分后端服务内容,敬请期待。

结语

 有疑问欢迎留言讨论~

标签:npm,微信,程序开发,特辑,mainRef,MD5,data,md5
来源: https://blog.csdn.net/languan_tech/article/details/118060417

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有