我有一个闭源 SaaS Web 应用程序,我的用户需要 OAuth 才能访问一些数据。大部分可用数据都是二进制的,如果用户可以下载文件,而不是在浏览器中做所有事情,处理起来会容易得多。
我可以编写 javascript 并将其部署在 webapp 中,因此我可以触发 OAuth 身份验证并将所需的Authorization
令牌标头添加到数据请求中。
除了 HTTP 标头之外,不可能以任何其他方式(例如,查询参数)发送授权,因此我无法使用 URL 制作简单的 HTML 锚标记以允许用户将数据下载为文件。
我相信我可以使用Blob URL来启用此数据的下载,并回退到旧浏览器的数据 URL。
两个问题:
有没有更简单的方法可以让我的用户将数据下载为文件,但仍然注入 HTTP 标头?
我可以流式传输数据,因此我不需要 100MB 的数据 URL 吗?