我想要做的是显示“已登录”网站的 iframe。例如,假设我想在 iframe 中向您显示您的 Gmail 帐户(已登录)。
所以我所做的是使用cURL登录。登录脚本完美运行。我将 cookiejar 设置为 cookie.txt,如下所示...
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt **($ch, CURLOPT_COOKIEJAR, "cookie.txt");**
登录本身工作正常!问题是,当我尝试使用 iframe 时,它说您需要登录,因为 Cookie 由服务器保存(在 cookie.txt 上),并且 iframe 是在客户端呈现的。
所以,我需要做的就是获取 cookie.txt 中的 cookie,并将它们写入用户计算机上的类似文件中。我想你使用 Javascript 来做到这一点?
最佳答案
您无法使用 JavaScript 将任何内容写入用户电脑上的文件。
即使您在客户端拥有 cookie(可能通过 ajax 从服务器获取),您也无法将 cookie 设置到另一个域。
我认为您唯一的选择是将网站代理给用户,这意味着 iframe 实际上会指向您服务器上的 php 脚本,该脚本将请求外部页面发送 cookie,然后将其显示给用户。
编辑
此外,如果用户在您的页面上输入他的登录名和密码,或者如果您将其存储在服务器中,您可以将其放入表单中,并将目标设置为 iframe 并将其提交到登录页面。
关于php - 将 cURL Cookie 复制给访问用户(使用 Javascript?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9477205/