如何允许从网络应用下载文件?

时间:2019-05-05 15:34:22

标签: google-apps-script web-applications

我将简化我的问题。

我的网站的客户可以订购文档(PDF文件)。我有一个完整的过程,首先要分析包含订单的邮件。 付款后,脚本会向客户发送一封电子邮件,其中包含指向要下载文件的链接。 该文件是存储在我的Google云端硬盘中的原始文件的副本。每个客户都有自己的副本。一段时间(7天)后,副本将被删除。 工作正常。 但是...我需要知道客户是否下载了文件。 当然,Google驱动器不允许跟踪下载。但是我有一个主意!

我希望在邮件中包括指向Google WebApp的链接,而不是在邮件中包含指向要下载文件的链接。该链接将只有ID文件可供下载。 当客户单击链接时,Web应用程序将读取url参数中的文件ID。然后,很容易建立最终URL来下载文件:

https://drive.google.com/uc?export=download&id=#####

我的脚本将轻松地在我已经使用的电子表格文件中跟踪下载。那是我的解决办法。

但是,这个想法还不是全部:(。我发现了一些脚本来从Web应用程序下载文件。但是我认为有一些需要发展的脚本(或者远离我的需要)。

我认为我必须对doGet()函数有所了解。我可以获取参数(即文件ID),并按照上面的说明构建最终的可下载文件URL。但是,如何将这个新URL发送给客户Bowser以敦促其下载文件?请注意,PDF文件很大(超过50 Mo):对于解决方案而言可能很重要。

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

好吧,我不想先发布代码,只是出于最佳实践的建议,我理解了我的错误。我只是想避免使用客户端JS(体验很差)。但是实际上,没有其他解决方法可以促使浏览器下载文件。 我找到了解决方案。我跟踪用户的下载! 还是谢谢你

答案 1 :(得分:0)

尝试像bit.ly这样的短链接。您可以创建一个短链接或类似Facebook Pixel或Google Ads使用的链接,例如某种重定向到Google驱动器文件的跟踪链接。有很多服务可以帮助跟踪访客。