x18336224827 2015-06-03 03:12 采纳率: 0%
浏览 1010

ipad safari iframe跨域

就是我在a站点,用iframe嵌入b站点网页,用iphone访问,iframe中b站点的登录总会失败,android没有问题

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-03 22:57
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这个问题是由于iOS和Android在处理跨域资源共享(CORS)的方式不同导致的。为了解决这个问题,你需要确保你的服务器正确地设置了允许跨域请求的CORS配置。

    以下是一个简单的例子,展示了如何设置CORS策略:

    // 在您的服务器上:
    app.get('/iframe', (req, res) => {
      res.setHeader('Access-Control-Allow-Origin', '*');
      res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE');
      res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
      res.setHeader('Access-Control-Max-Age', 1728000); // 4周
      res.send('OK');
    });
    

    在这个例子中,我们设置了一个CORS策略,允许来自任何来源的所有HTTP方法(包括GET、POST、PUT和DELETE)以及所有内容类型,并且缓存时间设置为一周。

    然后,当您使用iPhone或iPad在a站点中使用iframe时,应该可以正常工作了。如果仍然遇到问题,请检查您的服务器上的CORS配置是否正确。

    评论

报告相同问题?