托管 JSON 文件以供第 3 方应用程序/服务使用
Posted
技术标签:
【中文标题】托管 JSON 文件以供第 3 方应用程序/服务使用【英文标题】:hosting a JSON file for a 3rd party app/service to use 【发布时间】:2017-07-17 11:54:22 【问题描述】:我们目前使用 Jive Cloud N,它可以使用 Rest API 并允许使用自定义应用程序。我们的 UI 开发人员创建了一个应用程序,该应用程序使用 JS GET
从 JSON 文件中为我们的“生日和纪念日”磁贴提取数据。
目前,JSON 文件托管在我们的 UI 开发人员的 Google Cloud Apps 帐户中,但我们希望在内部托管它,这样我们就不必继续联系他们进行更改。 我将文件上传到我们的 OneDrive for Business 存储并创建了一个具有完全读取权限的公共 URL,但 Jive 平台在尝试加载自定义应用程序时抛出错误。
错误是文件
已被 CORS 策略阻止:没有“Access-Control-Allow-Origin” 标题存在
我们的开发人员说,要让它在他的 Google Cloud App 存储上运行,他必须在服务器的 server app.yaml 文件中指定 allow-control-allow-origin
字段。我不知道这是什么以及是否有 ODfB/SharePoint 的等价物。
回答我的问题:如何将这个 JSON 文件托管在 ODfB 甚至我们的 Azure 租户的某个地方,以便可以使用它?还是我最好尝试设置一个 Google Cloud App 存储位置并复制我们开发人员的设置?仅供参考 - 我更喜欢前者,因为我们已经将 M$ 用于许多云托管服务。
提前致谢
【问题讨论】:
【参考方案1】:回答我的问题:如何将这个 JSON 文件托管在 ODfB 甚至我们的 Azure 租约上的某个地方,以便可以使用它?
仅供参考 - 我更喜欢前者,因为我们已经将 M$ 用于许多云托管服务。
据我了解,您可以利用 Azure Blob Storage 来存储您的 JSON 文件,并且您可以使用 Microsoft Azure Storage Explorer 轻松管理/共享您的文件。
此外,您可以管理对容器和 blob 的匿名读取访问,请参阅此tutorial 了解更多详细信息。此外,您可以利用 SAS 为其他客户端授予对您的存储帐户的有限访问权限,您可以关注此tutorial 以开始使用 SAS。
作为一种简单的方法,您可以创建您的存储帐户并利用 Microsoft Azure Storage Explorer 来管理/共享您的文件,如下所示:
跨域访问需要配置CORS Setting
:
要共享您的文件(blob),您可以设置容器公共访问级别或利用 SAS 为其他客户授予对您文件的有限访问权限,如下所示:
右键单击您的容器,选择“设置公共访问级别”:
共享示例文件:https://brucechen.blob.core.windows.net/brucechen/index.json
另外,您可以右键单击您的 JSON 文件,单击“获取共享访问签名”:
共享示例文件:https://brucechen.blob.core.windows.net/brucechen/index.json?st=2017-02-28T08%3A04%3A00Z&se=2017-09-01T08%3A04%3A00Z&sp=r&sv=2015-12-11&sr=b&sig=rVkorHeNOd4j2YhkmmxZ6DfXVLf1FoN2smY6mNRIoWs%3D
【讨论】:
以上是关于托管 JSON 文件以供第 3 方应用程序/服务使用的主要内容,如果未能解决你的问题,请参考以下文章
2003 年使用 POST / JSON 托管 WCF Rest 服务
存储具有复杂数据结构的 JSON 文件以供以后使用的最佳方法是啥?