微信小程序前后端分离怎么实现

微信小程序前后端分离怎么实现,第1张

微信小程序后端分离的主要实现方式是将前端和后端的代码逻辑分开,前端负责展示和交互,后端负责数据处理和逻辑控制。下面简单介绍一下微信小程序前后端分离实现的一些关键步骤:

1 前端代码开发:使用微信小程序开发者工具或其他工具,开发出前端的界面、功能、逻辑代码等。

2 后端接口开发:后端负责提供API接口,承担数据处理和逻辑控制等任务。采用RESTful API 或GraphQL API 形式提供前端需要的数据接口。

3 前后端接口对接:在前端代码中,需要对后端提供的接口进行调用,获取数据进行展示,完成前后端交互。

4 服务端部署:将后端代码部署到服务器上,在服务器上运行后端代码,使得前端发起请求后能够得到正确的数据返回。

5 网络安全和数据安全:在前端和后端的实现过程中,需要注意网络安全和数据安全的问题,保证通信过程中的安全以及数据的保密性和完整性。

以上是微信小程序前后端分离实现的一些关键步骤,需要注意的是,该过程需要前端和后端开发人员进行密切协作,并进行适当的测试和调整,以保证整体的实现效果和性能。

公司业务开展,最近完成了一个微信小程序的开发。场景是这样,同一微信开放平台下拥有相同主体的APP和微信小程序来完成同样的业务,用户进入app或者微信小程序时必须获取用户的unionid来确认当前的用户身份,完成登录。小程序“获取用户信息”api(getUserInfo)的调用方式和之前相比有了较大更新,优雅的实现用户授权和登录非常重要,以下是我在微信小程序授权登录相关流程在开发时候的实现思路和总结,分享如下。

说明:

你可以简单的理解为

如果开发者在多个移动应用、网站应用和公众帐号之间有统一用户账号的需求,需要前往微信开放平台(openweixinqqcom)绑定公众号后,便可利用UnionID机制来满足上述需求。

用户在开放平台的唯一标识符

你可以简单的理解为:

微信针对不同的用户在不同的应用下都有唯一的一个openId, 但是要想确定用户是不是同一个用户,就需要靠unionid来区分。一般自己的后台都会有自己的一个用户表,每个用户有不同的userid。也就是说同一个用户在同一个微信开放平台下的相同主体的应用对应着相同的userid,unionid以及不同的openid。所以在用户登录进来的时候,我们只能靠微信返回给我们的unionid去判断是不是同一个用户,在去关联我们的用户表,拿到对应的userid。

绑定了开发者帐号的小程序,可以通过下面3种途径获取UnionID。

当用户满足条件2和3时,开发者可以直接通过wxlogin获取到该用户的unionid, 否则必须调用接口 wxgetUserInfo ,额外需要注意的事就是妥善处理用户拒绝授权的情况。

在真实的业务场景中,我们希望,用户进入小程序时,未登录情况下可以正常浏览商品,对小程序有个基本的认知,不要直接d出框要求用户授权,否则会干扰用户,导致新用户的流失,当用户需要使用一些高级功能和场景,这个时候再去要求用户授权,这样用户授权的几率会大大提高。

将登录的逻辑封装ajax

流程:

封装的意义

不再关注当前接口是否需要登录,用户是否已授权,所有请求直接调用 ajax() ,在必要的时候完成一切登录以及授权流程。小程序入口页面增加,业务拓展的时候,你只需要专注于业务实现。

参考资料

在页面上添加csrf token的存放域

<meta name="csrf-token" content="{{ csrf_token() }}">

然后在ajax请求头上把csrf token传进去

$ajaxSetup({

    headers: {

        'X-CSRF-TOKEN': $('meta[name="csrf-token"]')attr('content')

    }

});

laravel官方文档的csrf章节有详细的示例

1、XML>

优点:能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变的信息。Ajax不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。

缺点:破坏浏览器的后退与加入收藏书签功能。一个被完整读入的页面与一个已经被动态修改过的页面之间的可能差别非常微妙;用户通常都希望单击后退按钮,就能够取消他们的前一次 *** 作,但是在Ajax应用程序中,却无法这样做。

应用

Ajax前景非常乐观,可以提高系统性能,优化用户界面。Ajax现有直接框架AjaxPro,可以引入AjaxPro2dll文件,可以直接在前台页面JavaScript调用后台页面的方法。但此框架与表单验证有冲突。另外微软也引入了Ajax组件,需要添加AjaxControlToolkit。dll文件,可以在控件列表中出现相关控件。

百度百科-ajax

小程序源码可以改成网页,但是小程序和网页的开发语言不同,小程序使用的是微信提供的开发语言WXML、WXSS和JavaScript,而网页使用的是HTML、CSS和JavaScript。

如果要将小程序源码改成网页,需要对代码进行一定的修改,包括但不限于以下几个方面:

1 更改文件后缀名:将小程序源码中的后缀名为wxml、wxss等文件改成html、css等网页所需的后缀名。

2 修改标签:将WXML标签转换为HTML标签,例如将`<view>`标签改成`<div>`标签。

3 改变样式:WXSS中使用了类似rem和rpx之类特有的长度单位,在转换到CSS时需要进行相应的调整,并且部分样式可能需要重新设计。

4 修改调用接口:小程序在与后端交互时通常使用微信提供的接口,而网页则需要根据实际情况调用相应的API或者Ajax请求数据。

以上只是一些基本改动,具体还需要根据小程序中所涉及到的功能和API进行相应的修改。总之,在将小程序源码改成网页时需要对代码结构、样式以及功能等方面进行适当地调整。

以上就是关于微信小程序前后端分离怎么实现全部的内容,包括:微信小程序前后端分离怎么实现、微信小程序授权登录最佳实践、小程序POST请求laravel后台,_token怎么传递等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9800400.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存