JSON是一种轻量级的数据交换格式,常用于前后端数据交互和API接口传参。相比于传统的URL参数传递,JSON可读性更强、传输效率更高。
在URL中传递JSON参数时,可以将JSON对象转为字符串,然后使用GET或POST请求发送。如下面示例:
// 对象转字符串,注意要使用 encodeURI 将字符串进行编码 var obj = { name: '张三',age: 18,gender: '男' }; var jsonStr = encodeURI(JSON.stringify(obj)); // 发送 GET 请求 var url = 'http://example.com?info=' + jsonStr; fetch(url).then(response => { console.log(response); }); // 发送 POST 请求 var options = { method: 'POST',headers: { 'Content-Type': 'application/json' },body: JSON.stringify(obj) }; fetch('http://example.com',options).then(response => { console.log(response); });
从URL中获取JSON参数时,需要将参数字符串解析成JSON对象进行使用。如下面示例:
// 获取 URL 中的参数字符串 var url = 'http://example.com?info=%7B%22name%22%3A%22%E5%BC%A0%E4%B8%89%22%2C%22age%22%3A18%2C%22gender%22%3A%22%E7%94%B7%22%7D'; var paramStr = decodeURI(url.split('?')[1]); // 将参数字符串解析成 JSON 对象 var obj = JSON.parse(paramStr); console.log(obj);
通过以上两种方式,我们可以在URL中传递JSON参数,来实现更加灵活和高效的数据交互。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。