使用保存到驱动器按钮,其中包含来自其他域的URL

时间:2015-11-20 21:19:53

标签: javascript iframe google-drive-api cross-domain

我正在尝试使用Google的“保存到云端硬盘”按钮从其他域上传图片网址。所以谷歌告诉我,我需要包含以下特殊的HTTP标头。

  • Access-Control-Allow-Origin:*
  • Access-Control-Allow-Headers:Range
  • Access-Control-Expose-Headers:Cache-Control,Content-Encoding, 内容范围

有人知道如何在我的项目中包含此标题吗?

我从https://developers.google.com/drive/web/savetodrive

获取此信息
<!DOCTYPE html>
<html>
<head>
    <title>Save to Drive Demo: Basic Page</title>
    <link rel="canonical" href="http://www.example.com">
    <script src="https://apis.google.com/js/platform.js" async defer></script>
</head>
<body>
<div class="g-savetodrive"
     data-src="http://www.thehindu.com/multimedia/dynamic/02503/cat_2503938f.jpg"
     data-filename="Cat.jpg"
     data-sitename="My Company Name">
</div>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

您需要在服务器端放置标头Access-Control-Allow-Origin:*以启用跨域通信;您可以将“*”替换为特定域,以便只有该域才能访问该资源。浏览器将放置Origin :(这不受用户控制),这对于有效的CORS请求始终是必需的。当服务器允许跨域通信时,它将使用正确的标头Access-Control-Allow-Origin:*进行响应。在接收到头部之后,浏览器将从服务器接收的数据发送到请求的XMLHttpRequest对象。如果能够使用CORS,您必须记下您正在使用的浏览器。以下是有助于使用CORS的link,其中还包含CORS请求的基本javascript。