美酒没故事° 2023-02-07 10:44 采纳率: 37.8%
浏览 98
已结题

两个网站怎么跳转时隐藏式传参数?

比如 http://localhost:8080 跳到 http://localhost:8081 ,需要传递参数token,不在地址栏传递的话,还有什么解决办法?

  • 写回答

4条回答 默认 最新

  • 简效 2023-02-07 11:23
    关注

    在A页面中使用iframe标签加载B页面并隐藏,当点击跳转时,使用postMessage发送消息给B页面,在B页面中监听A页面发过来的数据,然后保存到localStorage中,然后当A页面使用window.open打开B页面时,B页面直接去localStorage中取数据,这样就完成了页面跳转并传参

    // A页面
    <span onClick=”toB();”>跳转</span>
    <iframe id=”myIframe” src=“http://b.com” style=”display: none” />
    
    <script>
        function toB(){
            var myIframe = document.getElementById(“myIframe”);
            if(myIframe){
                var data = {data: 1};
                myIframe.contentWindow.postMessage(JSON.stringify(data), “http://b.com”);
                window.open(“http://b.com”, ”_blank”);
            }
        }
    </script>
    
    
    
    // B页面
    <script>
        var aData = localStorage.getItem(“aPageData”);
        if(aData){
            doSomething(aData);     // 当能获取到数据时就说明是从A页面跳转过来的
            localStorage.removeItem(“aPageData”);
        }else{
            window.addEventListener(“message”, receiveMessage, false);
        }
        function receiveMessage(event){
            if (event.origin !== “http://a.com”) return;
            if(event.data){
                localStorage.setItem(“aPageData”, event.data);
            }
        }
    </script>
    
    
    

    ————————————————
    版权声明:本文为CSDN博主「River_何」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/weixin_43552879/article/details/127223631

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 2月15日
  • 已采纳回答 2月7日
  • 修改了问题 2月7日
  • 创建了问题 2月7日

悬赏问题

  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加