后台收到微信重复请求问题,解决方案

首先描述下应用场景,公司有一个h5页面(不是公众号文章)需要在微信浏览器打开及转发朋友圈或转发给好友,正常转发后发现没有描述及缩略图信息,解决方案请参考这篇文章https://www.jianshu.com/p/67ada6e9007a,写的很详细很好,这里就不再细述,这里重点要说的是页面里边的接口莫名的被多次访问的问题。

造成原因:可能是qq电脑管家类似的安全软件扫描的原因,对于未知域名的访问都要扫一遍安全性。。。。。。

解决方案:

方案1.后台收到多次请求,代码逻辑没问题的话,记得检查域名是否备案,域名是否备案,域名是否备案。如果域名没问题,大多是腾讯安全部门在扫码鉴别url的安全性,打印一下请求的ip和user-agent,给微信客服打个电话说明一下你问题,一般问题会解决的。

方案2.方案1是网上查到的,我们多次尝试联系腾讯人工客服,最终都以失败告终,无奈,我们自己用了一个很笨的方法也做到了解决问题的效果

主要思路是:进到页面里边时,首先判定本地是否已有保存的唯一确认的标识符(我用的时间戳),如果有,就把该标识符作为参数传递给后端,如果没有标识符,则新增标识符,同时把标识符存到本地,然后把新的标识符作为参数传递给后端,具体代码如下:

//Ajax请求
//this.ajaxrequest();

var virusParams = sessionStorage.getItem("virusParams")
if(typeof(virusParams)!=="undefined" && typeof(virusParams)!=="object" && virusParams) {
	this.ajaxrequest(virusParams);
} else {
	virusParams = (new Date()).valueOf()
	sessionStorage.setItem("virusParams", virusParams)
	this.ajaxrequest(virusParams);
}

此时,如果有访问一次页面 而请求多次相同接口的情况,那么 每次请求接口时都会携带相同的时间戳传递给后端,此时后端可以对接口进行识别过滤,如果有相同时间戳就默认只执行一次逻辑操作只返回一次结果

大概思路就是这样,具体还有部分细节处理这里就不再多述说了,如有疑虑,欢迎留言!

方案1参考了https://blog.csdn.net/gotohomebye/article/details/78508741

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序请求云开发JSON是指在小程序中通过调用云开发接口请求JSON数据。微信小程序是一种轻量级的应用,可以在微信中运行,而云开发则提供了一套完整的解决方案,包括数据库、存储、云函数等功能,使得开发者可以在小程序中实现更加复杂的功能。 当我们需要获取JSON数据时,可以通过以下步骤实现: 第一步,开通云开发。在小程序后台管理界面中,选择云开发,按照提示开通云开发服务。 第二步,创建数据库集合和上传JSON数据。在云开发控制台中,创建一个数据库集合,并将需要的JSON数据上传到该集合中。 第三步,在小程序代码中请求JSON数据。我们可以使用小程序提供的云开发接口wx.cloud.callFunction来请求JSON数据。首先,在小程序代码中定义一个请求云函数的方法,并在方法中设置请求的云函数名称和参数。然后,调用wx.cloud.callFunction方法,并将请求的云函数名称和参数传入。最后,通过回调函数获取到请求返回的JSON数据并进行处理。 通过以上步骤,我们可以实现在小程序中请求云开发JSON数据。这种方式具有灵活性和扩展性,可以适应不同的需求,并且可以通过云开发的其他功能来实现更多复杂的操作,例如数据库查询、数据更新等。同时,云开发还提供了数据的实时推送功能,可以及时更新小程序中的数据,提升用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值