微信小程序页面传参长度问题

需求:a页面传递参数到b页面,传递的参数是一个对象,需要进行json转换,但在小程序中传递的参数长度是有限制的,因此我们传递的时候可以,但是接收的时候,往往会被自动截取掉超出的部分,从而达不到我们想要的效果,这就需要对传递的数据进行处理;

解决:

a页面:

复制代码
// 查看教练个人信息
	function getTrainerInfo(item) {
		const info = encodeURIComponent(JSON.stringify(item))
		uni.navigateTo({
			url: `/pages/trainerInfo/trainerInfo?info=${info}`
		})
	}

b页面:

复制代码
	onLoad((options) => {
		info.value = JSON.parse(decodeURIComponent(options.info))
		console.log('info.value', info.value);
	})

总的来说就是对传输的数据进行编码,以确保特殊字符在URL中安全传输**。**‌该函数会将除了字母、数字、连词号(-)、下划线(_)、点(.)、感叹号(!)、波浪线(~)、星号(*)、单引号(')、圆括号(())之外的所有字符进行转码,将其转换为百分号(%)后跟随的两个十六进制数表示的形式。这样处理后的字符串可以确保在URL中不会被解释为特殊字符,从而避免参数传递错误或URL解析问题‌

相关推荐
游戏开发爱好者89 小时前
iOS 开发者的安全加固工具,从源码到成品 IPA 的多层防护体系实践
android·安全·ios·小程序·uni-app·cocoa·iphone
玄微云9 小时前
如何选择可靠的产后修复营销小程序?市场分析与实用指南
小程序
游戏开发爱好者811 小时前
Charles 抓不到包怎么办?从 HTTPS 代理排错到底层数据流补抓的完整解决方案
网络协议·http·ios·小程序·https·uni-app·iphone
北漂的老猿14 小时前
知识付费小程序 梦想贩卖机v2
小程序
我命由我1234516 小时前
微信小程序 - 避免在 data 初始化中引用全局变量
开发语言·前端·javascript·微信小程序·小程序·前端框架·js
白菜__19 小时前
去哪儿小程序逆向分析(酒店)
前端·javascript·爬虫·网络协议·小程序·node.js
我命由我1234519 小时前
微信小程序 bind:tap 与 bindtap 的区别
开发语言·前端·javascript·微信小程序·小程序·前端框架·js
2501_9159214321 小时前
Fiddler抓包工具详解,HTTPHTTPS调试、代理配置与接口分析实战教程
服务器·ios·小程序·fiddler·uni-app·php·webview
我命由我123451 天前
微信小程序 - 页面跳转并传递参数(使用路由参数、使用全局变量、使用本地存储、使用路由参数结合本地存储)
开发语言·前端·javascript·微信小程序·小程序·前端框架·js