精华内容
下载资源
问答
  • 微信小程序后端开发demo,包括获取openid、微信支付(统一下单、支付回调、企业付款)
  • 微信小程序后端开发

    2020-04-09 14:16:10
    新需求:开发微信小程序,能查询 Portal 系统的数据。 新需求详解: 入口:“magic公司”微信公众号,点击底部菜单“智慧服务”-“货主在线门户”,打开 “XXX在线服务“” 小程序。 用户的微信号首次打开 打开 ...

    一、现有:公司Portal Web系统。

    新需求:开发微信小程序,能查询 Portal 系统的数据。

    新需求详解:

    入口:“magic公司”微信公众号,点击底部菜单“智慧服务”-“货主在线门户”,打开 “XXX在线服务“” 小程序。

    用户的微信号首次打开 打开 “XXX在线服务“”  小程序时(此微信号还未绑定Portal账号的),弹出登录页的微信绑定/手机绑定页面,需要微信快捷绑定 或 手机号绑定(手机号及短信验证码),提交时通过手机号找到对应的Portal账号.

    未能查找到有效的Portal账号(账号启用,对应货主启用)则提示“此手机号未开通XXX在线服务,请联业务员”,绑定失败;否则绑定成功,直接显示此货主的运营首页。

    二、用户账号表user_customer

    CREATE TABLE `user_customer` (
      `id` bigint(64) NOT NULL,
      `user_name` varchar(20) DEFAULT NULL COMMENT '用户账号',
      `company_id` bigint(64) DEFAULT NULL COMMENT '组织id',
      `password` varchar(50) DEFAULT NULL COMMENT '登录密码',
      `random_code` int(4) DEFAULT NULL COMMENT '密码盐值',
      `real_name` varchar(20) DEFAULT NULL COMMENT '用户姓名',
      `status` tinyint(1) DEFAULT '1' COMMENT '状态(0禁用 ,1启用)',
      `type` int(1) DEFAULT '2' COMMENT '账号类型(po用户)',
      `phone` varchar(11) DEFAULT NULL COMMENT '手机号',
      `customer_id` bigint(64) DEFAULT NULL COMMENT '所属货主',
      `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
      `update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
      `create_user` bigint(64) DEFAULT NULL,
      `update_user` bigint(64) DEFAULT NULL,
      `deleted` tinyint(1) DEFAULT '0',
      `bind_wechat` tinyint(1) DEFAULT NULL COMMENT '微信小程序绑定(1-绑定,0-未绑定)',
      `open_id` varchar(100) DEFAULT NULL COMMENT '微信openId',
      PRIMARY KEY (`id`) USING BTREE
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;

    三、后端开发流程

    1.提供微信小程序登录接口。小程序拿code换取openId。

    2.提供获取用户绑定手机号信息。小程序拿着sessionKey、encryptedData(加密)、iv,调后台接口获取手机号(解密)。

    3.微信小程序绑定Portal账号(user_customer,手机号和openId绑定)。

    两种方式:

    第一种:微信快捷绑定,小程序获取手机号;

    第二种:输入手机号、验证码,绑定。(这里先跳过)

    4.微信小程序portal登录(参数传openId)

    5.微信小程序portal账号解绑(参数传openId)

    6. 接口1-4网关不拦截(不需要校验token及权限),需要配置网关不拦截。

     

    四、参考资料

    1.微信公众平台 申请账号

    https://mp.weixin.qq.com

    2.微信小程序登录时序

    https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 

    3.参考开发

    https://github.com/binarywang/weixin-java-miniapp-demo 

    展开全文
  • 第一个web项目-微信小程序后端开发

    千次阅读 多人点赞 2021-02-28 18:44:42
    第一个web项目-微信小程序后端开发 前言 去年暑假一个偶然的机会我和几位同学加入了学院一位老师主持的教改项目,需求是开发一个基于SPOC与翻转课堂的计算机组成原理课程的学习app(类似慕课、知到),后来经过讨论...

    第一个web项目-微信小程序后端开发

    前言

    去年暑假一个偶然的机会我和几位同学加入了学院一位老师主持的教改项目,需求是开发一个基于SPOC与翻转课堂的计算机组成原理课程的学习app(类似慕课、知到),后来经过讨论决定降低难度,先做一个微信小程序,附带一个后台管理系统,于是我的第一个web项目就开始了~

    需求分析

    这里简单介绍下SPOC和翻转课堂的意思

    • 翻转课堂

    “翻转课堂”(Flipping Classroom)是一种颠覆传统教学由“课堂授课听讲 + 课后作业练习”转变为“课前自主学习 + 课堂协作探究”的新型教学模式。

    • SPOC

    SPOC(Small Private Online Course)一般被译为小规模限制性在线课程或者小规模私有型网络课程,音译为“私播课”。
    这次项目的需求是开发一个学习类型的小程序,用户分为学生和教师,其中学生可以观看视频、课件、动画,完成作业、考试以及发布评论、点赞、回复,而教师可以上传教学视频、课件、动画和发布作业、考试、通知,以及查看学生的学习情况,也可以查看评论回复,及时解答学生的疑惑。

    团队分工

    团队一共有四个人,总体工作分为产品设计、前端开发、后端开发三部分,然后每部分由两人负责。其中我是负责后端开发的,同时兼任项目负责人(其实也没有听上去那么高大上,只是需要承担更多决策、协调、沟通的角色)。

    总体设计

    这里分为小程序和管理系统
    首先是小程序,放几张使用墨刀制作的原型图,这里多说两句,市面上的小程序基本都是微信授权直接登录,最多绑定手机号,我们这个由于要统计学生的学习情况才设置了注册和登录功能



    至于管理系统,由于是10月份才开始做的,而且是我和另一位做后端的同学负责的,时间比较紧,我们作为前端小白没有十分系统的方法去做开发,只是大概确定了需要做哪些模块,每个模块对哪些表的增删改查,这里原型图就不放了(较简陋)

    开发工具及编码实现

    小程序前端

    据我了解,做前端的同学先去微信公众平台注册账号,然后做一些开发设置,具体步骤自行百度。前端用的是微信开发者工具,有不会的基本上在微信开放文档都可以找到,包括许多实用的API。

    后端

    这里分为数据库、接口代码两部分

    数据库

    用的是mysql数据库,之前是跟着学堂在线的一个小程序入门教程做的,它推荐的本地开发环境是phpstudy,里面集成了php、mysql、apache、FTP、Nginx以及数据库管理工具phpMyAdmin,关于phpMyAdmin使用请看https://blog.csdn.net/u012767761/article/details/78238487
    原本的数据库设计得不好,存在较多冗余数据,后来学习了数据库系统这门课,我进行了大改,先确定有哪些实体以及实体之间的联系,然后画er图,最后再建模,通过外码约束大量减少了冗余,也减少了表的数量。

    接口代码

    教程使用的是php语言,框架是thinkphp5,开发手册看https://www.kancloud.cn/manual/thinkphp5/118003,我当时是去b站找视频学了下php基础语法,然后就去学原生php以及框架如何操作数据库。然后根据业务逻辑开始编码,其实每个接口(或者叫类里面的一个函数)结构都差不多,主要是三部分:接收前端传来的数据、增/删/改/查、返回结果给前端。
    顺便说下代码编辑用的是sublime text3,教程看https://blog.csdn.net/sam976/article/details/75333079/,这个不是ide,没有那么多的功能比如调试、运行,单纯是只有编辑、加注释、格式化等等,这里吐槽下自带的格式化代码功能(先选择代码,再Edit -> Line -> Reindent),有点辣鸡。而且如果有语法错误不会像eclipse那样自动检测出来,之前被坑了几次,肉眼找不到的话只能用postman去测试了。

    管理系统前端1.0

    一开始我们是不知道还要做个管理系统的,以为所有功能都放在小程序,后来老师跟我们讨论聊到这个问题,我们才知道原来还有这回事,其实就是管理系统应该具有一切功能,即对数据库所有表的增删改查,而小程序只需要有些轻量的功能即可,至于上传大容量文件、查看学习情况这些不够轻量的功能全部放在管理系统。好吧,凡事总有第一次,我们就开始学习基本的前端三件套html,css,javascript。
    开始做的时候我们希望先实现功能,界面难看点没有太多关系,于是学了部分三件套的基础后又学了ajax技术(因为要与后端通信),这里最开始用的是创建XMLHttpRequest 对象,用open()方法设置请求类型和url,用send()方法发送数据到后端,直到遇到了jquery,后面的请求统一都用$.ajax()了。
    接下来又遇到了一个难点,因为基本都用表格来展示数据,那获取数据后如何动态地加入表格呢?查找资料后用每一条数据拼接成由tr标签包含的字符串,然后用jquery获取表格标签后调用append()方法加入表格中。
    除此之外,我们想在每行末尾设置按钮进行事件处理,于是我们append数据的同时也把button标签放入刚才的字符串中,然后给每个button设置id属性,比如用于修改数据的就叫fixi,最后这个i是代表表格第几行,然后添加事件监听,点击button时获取id,然后查看最后一位是多少从而确定是第几行。
    这些做法实现起来是挺繁琐的,而且感觉在重复造轮子,我们也做得有点郁闷,因为每个页面基本都要这样做,但是当时没有那么多的时间精力去学习框架,只是想先实现功能(u1s1,上学期的课多到我快吐了)。
    放两张界面图

    管理系统前端2.0

    之前放假,总算有较多空余时间了,我们决定要改下界面,但毕竟自身水平不高,因此需要用一点第三方的东西了。
    在跟小程序前端测试了部分功能后,有一天后端同学找到了一个开源的框架然后我们一起看了下说明文档,最后决定:就用它了。
    有请layui登场,经典模块化前端框架、低门槛开箱即用。
    真正使用之前可以先看看文档https://www.layui.com/doc/,个人感觉上手还是挺快的。layui提供了许多实用的组件包括弹出层、表格、表单、文件上传、流加载等等。
    就拿表格来说,之前我们用append动态添加数据,现在直接table.render(),设置好参数就行了;之前我们给button设置id进行事件处理,现在绑定工具条,直接table.on()就行了;而且之前我们没实现的分页,现在设置分页参数就行了,然后查询数据库时分页读取。
    另外,layui提供了一个页面布局的模板,包括logo、用户名、退出按钮、导航栏以及一些css动画。我们要做的就是按照它的模板来,页面元素的样式也参考它提供的。
    有了layui的助攻,我们可以将更多注意力放在业务逻辑上,更多关注用户体验。

    测试

    后端本地测试

    工具:postman
    使用:打开一个新窗口,选择请求类型,输入url,设置参数,点击send
    这种测试我认为是模拟前端发送数据然后运行后端代码,看结果是否正确,属于白盒测试,但是我们不是专业测试人员,目前这样测试不是做得很规范,只能尽可能想到不同的测试用例。

    前后端联合测试

    由于放假回家了没办法面对面,只能借助腾讯会议线上测了。
    在部署工作完成之后,一般是我们写好接口代码,然后把url和需要的参数告诉前端同学(这里注意下,微信小程序的请求api只允许https开头的url,而且前端必须在微信公众平台配置好合法域名,不然会报错),前端把这些东西填入那个wx.request的api然后运行,他们会查看返回的数据是否正确,我们会查看数据库的情况,如果没问题会测试多几个数据,都可以的话就到下一个功能,这种方式应该是属于软工讲到的V模型的单元测试。

    部署

    用的是新浪云,实名认证、学生认证后会送一些云豆(新浪云的计费单位,1RMB=100云豆)
    跟着之前说的教程把整个thinkphp项目部署到新浪云,具体步骤看https://www.kancloud.cn/cnzxo/sae_thinkphp/1423806

    • 代码

    在代码管理那里可上传压缩包,或者在线编辑(跟记事本差不多),改动大的最好在本地写好再贴上去

    • 数据库

    开启共享型mysql服务,目前用了phpmyadmin4.9版本,然后建表或导入sql文件

    • 缓存

    开启memcached服务,设置容量16MB(省点钱),其实这个服务我不是很清楚干什么的,但如果不打开访问接口时会报致命错误?

    • 文件存储

    我们需要保存许多类型的文件包括视频、课件、动画、作业、考试、头像,因此需要存放在服务端。这里开启storage服务,使用方法看https://www.sinacloud.com/doc/sae/php/storage.html#cyberduck,普通用户配额5个bucket,每个容量10G,然后直接当作本地磁盘那样用就行了,控制台或写代码都可上传文件,上传后获得url,然后就可以通过网络访问,关于新浪云环境下php如何操作看官方文档http://apidoc.sinaapp.com/source-class-sinacloud.sae.Storage.html#。

    • 域名

    应用信息可查看二级域名,独立域名需要购买且备案

    • 日志

    日志中心可查看每次请求的接口、时间、请求方设备等信息

    • 其它

    控制台还可以实时查看流量统计、资源使用情况,以及消费情况

    总结

    这个项目我也算前后端都做了一遍,感觉前端不太适合自己,可能是对页面元素样式、用户体验不够敏感,不过必须承认前端是挺有意思的。至于后端是更加注重逻辑,目前我对后端的了解只停留在数据库、网络、部署层面,其实如果用户数量非常多还要考虑高并发的问题,也就要使用多线程、负载均衡、消息队列等技术了,所以还有很多技术需要学习。
    最后感谢老师的支持和几位队友的帮助。第一次写博客,若有描述不当之处欢迎指出。

    展开全文
  • tips: 本文面向的对象是已经会使用django开发web后端的人员微信小程序后端与普通web的区别微信小程序的后端开发和普通的restful API 大致上相同,只不过要注意以下几点限制必须使用HTTPS协议请求后端服务器不支持...

    tips: 本文面向的对象是已经会使用django开发web后端的人员

    微信小程序后端与普通web的区别

    微信小程序的后端开发和普通的restful API 大致上相同,只不过要注意以下几点限制

    必须使用HTTPS协议请求后端服务器

    不支持COOKIE

    不支持django内置的user登录, 因为它使用的是微信的用户系统

    应对方法

    对于HTTPS的限制, 很简单, 去godaddy等网站申请一个https证书, 下载后使用nginx指定即可, 可以参照此文章, 这篇文章的证书是自己生成的, 这里需要替换为申请的证书

    不支持cookie, django原生的session机制就会失效

    不支持django内置的user登录, 因为它使用的是微信的用户系统

    对于上边这两个问题,我使用了JWT来保证了用户的在线验证. 那么什么是JWT呢, 可以看下推酷的这篇文章了解一下, 简要的来说就是用户登录以后, 原先保存在cookie里边的一个随机的sessionid变成了保存在http头部的Authorization字段的一个token值, 这个值是服务端自身加密的, 客户端无需解密, 只要服务端知道这个token对应这个用户就好, 当然这里也有很多的附加功能, 比如超时等等, 不再赘述

    然而网上有很多的jwt开源项目, 比如django-jwt, rest-framework-jwt, 你都可以使用, 但是却不适用于微信小程序, 为什么这么说? 是因为这两个项目都和django内置的user相耦合, 在上边提出的第三个问题的地方会引起问题, 在尝试了rest-framework-jwt发现问题后, 我毅然决定自己使用pyjwt实现一个用户登录/鉴权的组件.

    首先要知道微信小程序的登录流程是:

    客户端请求用户授权

    用户授权成功

    客户端或得到用户基本信息(包括code,没有openid的用户明文信息, 有openid的加密后的信息, 解密向量iv)

    客户端把返回的信息发送到服务器

    服务器使用code去微信服务器换取session_key

    服务器用这个session_key+iv去解密用户密文, 得到用户完整信息(基本+openid)

    将用户在服务器登录, 维持用户session(这里的失效时间微信约定是30天)

    看起来好像步骤很多, 但是我们没有必要去重新造轮子, 早有人已经写好认证流程python-weixin我们可以省去4-6的步骤, 那么剩下的问题就是如何解决第7步也就是维持session的问题了.

    因为jwt始终使用http头部的token进行验证这里我的思路是:

    微信用户登录后, 返回客户端token, 并在缓存创建用户的session信息

    客户端请求时附加http头Authorization=JWT

    使用中间件检验http头的token, 审查通过则在request上追加一个jwt_user属性(这里不想覆盖django自带user), 同时去缓存寻找这个用户的session信息, 加载到request.jwt_session, 审查如果不通过则jwt_user设置为None, jwt_session为一个空的session对象

    使用认证方法, 对于需要进行登录的接口检验用户是否为None

    到这一步就已经完成了整个的用户鉴权/session持久化流程, 如果你只是为了了解django开发小程序注意的点到这里已经可以结束了, 下边我要介绍的是我实现的一套中间件逻辑, 有兴趣可以拿去直接使用.

    这里中间件我已经实现了参见django-jwt-session-auth, 调用模块内部的jwt_login函数, 登录你的用户时会返回一个token, 这个token将要返回客户端, 同时它也会做user的session缓存动作.下一次客户端带着Authorization=JWT 调用的时候中间件会直接将对应的user和session加载到request.jwt_user和request.jwt_session, 这里你需要设置的只有设置两个值: USER_TO_PAYLOAD和PAYLOAD_TO_USER两个方法:

    * USER_TO_PAYLOAD: 根据当前登录的用户生成一个字典payload方法

    * PAYLOAD_TO_USER: 根据你之前生成的payload找到对应的用户

    注: 2017.1.15我这个组件还没有完整的readme, 后续会加上

    最后, 关于认证器, 如果你使用rest-framework可以直接继承BaseAuthentication在authenticate方法里校验jwt_user是否为None即可, 如果直接使用django原生的view, 可以写一个装饰器装饰在类view的dispatch方法上或直接装饰在函数的view上.

    示例

    # django-jwt-session-auth设置, 放在settings.py文件中

    JWT_AUTH = {

    'PAYLOAD_TO_USER': 'user.auth.payload_to_user',

    'USER_TO_PAYLOAD': 'user.auth.user_to_payload',

    }

    # rest-framework验证器

    class WechatUserAuthentication(BaseAuthentication):

    def authenticate(self, request):

    if not request.jwt_user:

    msg = u'请先授权'

    raise exceptions.AuthenticationFailed(msg)

    return (request.jwt_user, request.jwt_user.uuid)

    # 原生django验证装饰器

    def login_required(func):

    @wraps(func)

    def verify_login(request, *args, **kwargs):

    if request.jwt_user:

    return func(request, *args, **kwargs)

    else:

    # 返回HTTP_401

    return verify_login

    展开全文
  • 微信小程序后端开发关键点指引

    千次阅读 2019-04-27 21:09:23
    开发微信小程序需要前后端一起配合,前端通过微信提供的工具开发,实际页面、样式及JS代码部署在微信服务器;后端可以通过JAVA语言开发,实现具体业务逻辑并与数据库、Redis缓存、MQ等进行交互,代码部署在开发者...

    开发微信小程序需要前后端一起配合,前端通过微信提供的工具开发,实际页面、样式及JS代码部署在微信服务器;后端可以通过JAVA语言开发,实现具体业务逻辑并与数据库、Redis缓存、MQ等进行交互,代码部署在开发者服务器;调用微信提供的API时,后端开发关键点有两个:

    一、在前端调用wx.login() 获取 临时登录凭证code之后,将code字符串发送给后端,后端通过auth.code2Session接口获取用户唯一标识 OpenID 。

    为什么非要获取OpenID?因为一个微信小程序客户在此微信小程序之内,这个OpenID是唯一的,在客户登录、使用小程序的整个过程中,开发者的后端服务就是通过它来区分不同用户的。
    前端的code只是临时凭证,是有时效性的,统一OpenID的用户在每次登录小程序时code不一样。

    后端获取OpenID非常简单,遵循微信小程序提供的帮助文档就成,直接Get这个地址:https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code, 将appid、secret、js_code、grant_type放进去,然后解析出返回的JSON串就可以啦。
    比如用SpringBoot开发,可以将getOpenId封装成一个服务方法,在登录的时候直接调用就可以啦。
    代码如下:

    @Override
    public CodeToSessionEntity getOpenId(String code, String logUniqueFlag) {
        String requestUrl = mallConstant.getWx_getopenid_url();
        String appId = mallConstant.getWx_appid();
        String secret = mallConstant.getWx_appSecret();
        String getUrlPath = requestUrl + "?" + "appid=" + appId + "&secret=" + secret + "&js_code=" + code + "&grant_type=authorization_code";
        try {
            sessionEntity = restTemplate.getForObject(getUrlPath, CodeToSessionEntity.class);
        } catch (Exception e) {
            log.error("{}-根据code从微信小程序获取OpenId的值发起请求,出现了异常!e={}", logUniqueFlag, e);
        }
        log.info("{}-根据code从微信小程序获取OpenId的值发起请求,url={},result={}", logUniqueFlag, getUrlPath, sessionEntity.toString());
        return sessionEntity;
    }
    

    调用处代码如下:

    CodeToSessionEntity sessionEntity = weiXinService.getOpenId(code, mtmWxCodeReq.getLogUniqueFlag());
    

    二、后端业务逻辑如果打算调用微信提供的活体认证(生物认证)、物流助手、大数据分析能力,那么就需要access_token,这个access_token是调用这些api的接口调用凭证。

    比如说调用生物认证能力,必须得有access_token。
    在这里插入图片描述
    获取access_token比获取OpenID还要简单,只要Get这个地址:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET, 将appid、secret放进去,然后解析出返回的JSON串就成。

    “模拟大量微信小程序用户对平台进行并发访问的性能测试指引”请参考
    https://blog.csdn.net/pharos/article/details/89397826

    展开全文
  • 客户端小程序demo代码 下载 二.配置文件 1.配置以支持https访问 如何配置免费的https,自行百度 2.配置wafer的SDK配置文件sdk.config 新建个文本文件粘贴如下代码: { "serverHost": "www.xx.com", ...
  • 例如:用户表的主键id存的是18位的biglong类型的,在查询列表的时候,返回的一律是转换成long的数据,android、ios、web端、移动端均正常,只有微信小程序端接收转换的时候出错,然后从列表进详情页就出现拿不到数据...
  • 主要介绍了微信小程序后端开发流程的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 微信小程序后端与普通web的区别 微信小程序的后端开发和普通的restful API 大致上相同,只不过要注意以下几点限制 必须使用HTTPS协议请求后端服务器 不支持COOKIE 不支持django内置的user登录, 因为它使用的是微信的...
  • 我有一个想法,使用云服务器,docker里搭建nginx和.net环境,然后作为微信小程序的后端 进行开发,但是我不知道怎么进行,也不太清楚怎么在网上查询相关的资料 ...1. 微信小程序后端开发流程时怎样的啊? 谢谢
  • WeChat server code 微信小程序后端代码
  • 微信小程序后端Springboot,功能增、删、改、查操作,一个交互demo 前端地址:https://download.csdn.net/download/huanfengzhiqiu/10526403 后端地址:https://download.csdn.net/download/huanfengzhiqiu/10526396
  • 主要介绍了微信小程序后端实现授权登录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 微信小程序后端

    2018-12-04 20:33:19
    CRMEB微信小程序商城系统,基于CRMEB系统开发的一套电商系统,带优惠券、积分、秒杀、拼团、砍价、分销等功能, 后端。 小程序前端请下载【微信小程序和微信小商城】标题的压缩包
  • 接上篇微信小程序后端搭建:分享:Laravel 微信小程序后端搭建 后端搭建好后第一件事就是用户登录认证,简单实现微信小程序登录认证 1.user 模型 use Laravel\Passport\HasApiTokens; 新增 use HasApiTokens, ...
  • 微信小程序源码,微信小程序后端源码,小程序后端源码,小程序管理后台微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验。 小程序注册 注册小程序帐号
  • 主要介绍了Laravel 微信小程序后端搭建步骤详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • LianJiaAPI 上海优房微信小程序后端
  • 此源码为同城拼车微信小程序后端源码,此源码只用作学习和交流,请勿用作商业用途及销售获利 前端代码地址: 后端代码地址: 关于如何配置 有问题 你可以用以下联系方式找到我(不接受问问题,有问题请直接提交) ...
  • 本文将介绍采用 Django 开发微信小程序后端,通过将用户模块进行重构,并采用JWT来进行用户认证,来解决以下问题: 微信小程序不支持 Cookie,因此不能采用 Django 默认的 Session 验证机制; 同时小程序也不支持 ...
  • 主要介绍了微信小程序后端无法保持session的原因及解决办法问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 由于最近开发微信小程序,前后端交互需要使用https协议,故需要配置https服务 服务器环境  服务器系统 ubuntu  环境 xampp  SSL服务 let's encript   步骤   安装certbot-auto:   wget ...
  • Applet_shareIt 微信小程序后端程序 采用express框架,连接池等技术 内涵mysql数据库文件
  • 开发小程序后端怎么区分不同的小程序用户?或者说有哪些属性可以唯一的标识一个用户呢?首先想到的是 微信号,手机号,微信号好像现在还没有API可以获取,手机号又比较麻烦还涉及到读取用户信息,进一步的做法是用...
  • 微信小程序后端数据\n换行无效解决 data(data){ let reg = RegExp('\\\\n','g') return data.replace(reg,'\n') }

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 38,271
精华内容 15,308
关键字:

微信小程序后端如何开发

微信小程序 订阅