• 请不要在回答技术问题时复制粘贴 AI 生成的内容
liudewa
V2EX  ›  程序员

前端问题, 我们对接了一个老系统其他公司开发的,现在要接入我们的页面(跨域的)

  •  
  •   liudewa · Feb 27, 2025 · 2159 views
    This topic created in 480 days ago, the information mentioned may be changed or developed.

    1.老系统上 有个按钮 之前点击直接调用我们提供的接口(传入一个 id 和写死的 tableName)

    1. 现在情况是:一个 id 下会出现有两个或者多个 tableName,需要我们做一个中间页面列出 tableName 列表让用户单选一个

    2. 在中间页面,点击确定,我们自己 调用之前的接口传入 id(点击按钮老系统会传过来)和选中的 tableName

    3. 整体流程就是 老系统点击按钮(传一个 id) 要弹出我们的中间页

    5 大佬们能不能给个思路

    11 replies    2025-02-28 09:22:40 +08:00
    xiaofeixiang
        1
    xiaofeixiang  
       Feb 27, 2025
    看看老系统是怎么接入的,是 iframe 还是微前端,iframe 有 postMessage ,微前端都有通信的,你应该描述仔细一点
    liudewa
        2
    liudewa  
    OP
       Feb 27, 2025
    @xiaofeixiang #1 老系统 之前中调用了 一个我们的接口 没有页面
    xiaofeixiang
        3
    xiaofeixiang  
       Feb 27, 2025
    @liudewa 还是信息不足,老系统没有页面,你们用什么形式接入?
    liaozzzzzz
        4
    liaozzzzzz  
       Feb 27, 2025 via iPhone
    老系统你们能改吗,不能改试一下直接用请求参数 301 到你们的新页面呢
    IvanLi127
        5
    IvanLi127  
       Feb 27, 2025
    在老系统的 html 响应注入一个 js 脚本,检测到目标按钮点击了,就打开你们现在要的中间页面,只要老系统 web 服务你们能控制就能做。
    liudewa
        6
    liudewa  
    OP
       Feb 27, 2025
    @xiaofeixiang #3 之前老系统直接调用我们的接口啊 都没页面
    liudewa
        7
    liudewa  
    OP
       Feb 27, 2025
    @liaozzzzzz #4 老系统不是我们公司的, 协商了,只能点击按钮的时候 调一下链接或者函数
    liudewa
        8
    liudewa  
    OP
       Feb 27, 2025
    @IvanLi127 #5 目前讨论的方案是 点击按钮 调用我们提供的一个函数, 函数内部生成一个 iframe 嵌入进去,ifrma 地址是我们的页面地址, 我们来控制 iframe 的显示与隐藏
    liudewa
        9
    liudewa  
    OP
       Feb 27, 2025
    @liaozzzzzz #4 是个弹窗
    jqtmviyu
        10
    jqtmviyu  
       Feb 28, 2025
    把你的需求交给 ai, 我觉得回答挺明确的.

    `题目内容+`
    `解决方法是需要提供一个函数, 该函数通过外部 js 引入. 调用该函数时, 生成一个 iframe 页面, 该页面生成一个可以选择 tableName 页面, 选中 tableName 后把它传递到 iframe 外部, 也就是主页面, 该如何实现`

    主要就是 iframe 通信部分, 你实验下实际跨域有没有问题.
    wangtian2020
        11
    wangtian2020  
       Feb 28, 2025
    跨域是一个后端问题,用 Nginx 给所有没跨域的请求返回时强制加一个跨域头。
    跨域实际上是浏览器看没跨域头自己阻止掉的,所以无论如何用什么办法,转发也好代理也好,把跨域头加在请求头里面就通过了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5538 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 08:36 · PVG 16:36 · LAX 01:36 · JFK 04:36
    ♥ Do have faith in what you're doing.