Google 驱动器是否不再允许从其他网站引用 JavaScript 文件?
Does Google Drive no longer allow JavaScript file referencing from other website?
我刚刚注意到我在 Google 驱动器上托管的所有 javascript 文件都不再有效,之前 officially allowed by Google。所有变量和函数调用都未定义(如 Chrome 控制台中所示),但一直以来,它们都运行良好。以下是我的 link 参考资料:
<script charset='utf-8' src='https://googledrive.com/host/0B_kAR1YCVojTQnlmMXA0cWhfNGM' type='text/javascript'/>
访问权限一直设置为public,现在仍然是public。在我的 HTML 文件中,我调用如下所示的函数:
<script type="text/javascript">setDefaultShow(13, 13);</script>
直到最近,它一直运行良好。我可以知道还有什么问题吗?难道是因为 Google Drive 不再允许从其他网站引用 javascript 文件?如果答案是 'Yes',还有其他替代方案来托管我的 javascript 文件吗?
提前致谢!
我刚从 phone 和 Google 下车,他们知道这个问题。他们仍然允许在 GoogleDrive 上托管 javascript 文件,只是对某些人不起作用,而且最近一天半都没有。同时(或者可能从现在开始)我正在使用亚马逊的简单存储服务:http://aws.amazon.com/s3/
我们设法解决了这个问题
好像和MIME类型有关,MIME类型为application/x-javascript的JS文件加载失败(之前没问题)
MIME 类型 text/plain 的 JS 文件加载正常。
您可以尝试使用此代码来识别特定文件夹中存在 MIME 问题的文件
var fid = "your-folder-id-here";
function myFunction() {
var folder = DriveApp.getFolderById(fid);
var files = folder.getFiles();
while (files.hasNext()) {
var file = files.next();
Logger.log(file.getName() + " - " + file.getMimeType());
}
}
编辑:
Google 已于 2/9/2015 解决此问题。下面的步骤不再需要,如果使用将导致意外的 MIME 类型控制台警告。但是,我将保留原来的回复,以防问题再次出现。
原始答案:
我用这个方法解决了这个问题:
- gDrive: 将所有 *.js 文件下载到您的本地驱动器
- gDrive:删除所有*.js文件
- 本地盘:批量重命名所有*.js文件为*.txt
- 本地驱动器:将所有 *.txt 文件上传到 gDrive
- 本地驱动器:将所有 *.txt 文件批量重命名为 *.js(即还原第 3 步)
- gDrive: 将所有 *.txt 文件单独重命名为 *.js(主要痛苦)
此方法可确保 gDrive 上文件的 MIME 类型为 text/plain,因为您上传的文件扩展名为 .txt。当您在 gDrive 上将文件重命名为 .js 时,MIME 类型将被保留。
尝试在此处使用直接 link 生成器 https://sites.google.com/site/gdocs2direct/
第 1 步:转到 Google 驱动器并右键单击要共享的文件。
现在点击 "Share..."。
第 2 步:在出现的 window 上,单击 "Get shareable link"。
第 3 步:确保下拉菜单设置为 "Anyone with the link..."
或 "Anyone on the internet..." 选项,然后单击 "Copy link"。
第 4 步:现在只需将 link 粘贴到上面的文本框中并创建您的直接 link。享受吧!
我刚刚注意到我在 Google 驱动器上托管的所有 javascript 文件都不再有效,之前 officially allowed by Google。所有变量和函数调用都未定义(如 Chrome 控制台中所示),但一直以来,它们都运行良好。以下是我的 link 参考资料:
<script charset='utf-8' src='https://googledrive.com/host/0B_kAR1YCVojTQnlmMXA0cWhfNGM' type='text/javascript'/>
访问权限一直设置为public,现在仍然是public。在我的 HTML 文件中,我调用如下所示的函数:
<script type="text/javascript">setDefaultShow(13, 13);</script>
直到最近,它一直运行良好。我可以知道还有什么问题吗?难道是因为 Google Drive 不再允许从其他网站引用 javascript 文件?如果答案是 'Yes',还有其他替代方案来托管我的 javascript 文件吗?
提前致谢!
我刚从 phone 和 Google 下车,他们知道这个问题。他们仍然允许在 GoogleDrive 上托管 javascript 文件,只是对某些人不起作用,而且最近一天半都没有。同时(或者可能从现在开始)我正在使用亚马逊的简单存储服务:http://aws.amazon.com/s3/
我们设法解决了这个问题 好像和MIME类型有关,MIME类型为application/x-javascript的JS文件加载失败(之前没问题) MIME 类型 text/plain 的 JS 文件加载正常。
您可以尝试使用此代码来识别特定文件夹中存在 MIME 问题的文件
var fid = "your-folder-id-here";
function myFunction() {
var folder = DriveApp.getFolderById(fid);
var files = folder.getFiles();
while (files.hasNext()) {
var file = files.next();
Logger.log(file.getName() + " - " + file.getMimeType());
}
}
编辑:
Google 已于 2/9/2015 解决此问题。下面的步骤不再需要,如果使用将导致意外的 MIME 类型控制台警告。但是,我将保留原来的回复,以防问题再次出现。
原始答案:
我用这个方法解决了这个问题:
- gDrive: 将所有 *.js 文件下载到您的本地驱动器
- gDrive:删除所有*.js文件
- 本地盘:批量重命名所有*.js文件为*.txt
- 本地驱动器:将所有 *.txt 文件上传到 gDrive
- 本地驱动器:将所有 *.txt 文件批量重命名为 *.js(即还原第 3 步)
- gDrive: 将所有 *.txt 文件单独重命名为 *.js(主要痛苦)
此方法可确保 gDrive 上文件的 MIME 类型为 text/plain,因为您上传的文件扩展名为 .txt。当您在 gDrive 上将文件重命名为 .js 时,MIME 类型将被保留。
尝试在此处使用直接 link 生成器 https://sites.google.com/site/gdocs2direct/
第 1 步:转到 Google 驱动器并右键单击要共享的文件。 现在点击 "Share..."。
第 2 步:在出现的 window 上,单击 "Get shareable link"。
第 3 步:确保下拉菜单设置为 "Anyone with the link..." 或 "Anyone on the internet..." 选项,然后单击 "Copy link"。
第 4 步:现在只需将 link 粘贴到上面的文本框中并创建您的直接 link。享受吧!