我正在为会议提交文件。我想将DocuSign与Alfresco基于Angular的开发人员框架,特别是Alfresco Content App集成。
为了简化操作,我想考虑可以使用浏览器100%完成的工作流,而无需我自己的任何后端代码。
我怀疑我可以为Alfresco UI中找到的任何文档创建一个“立即签名此文档”类型的操作。这样可以启动一个OAuth流,该流不需要我自己的任何后端服务。
我认为我需要将集成商密钥放入SPA中。这样,使用该应用程序的任何人都可以看到。通过阅读文档,我不清楚“泄漏”此键是否可以?
在不添加自己的后端服务的情况下,我还可以在SPA中实现其他用例吗?例如发送文档以供一个或多个人签名?还是在Angular UI中嵌入签名体验?
我在DocuSign博客上看到了以下系列文章:
https://www.docusign.com/blog/dsdev-building-single-page-applications-with-docusign-and-cors-part-1/
在阅读了该内容以及REST API文档之后,我仍然不清楚,如果没有我自己的后端服务的任何支持,是否甚至可以实现类似的东西。
我也没有在网上找到任何地方,可以与DocuSign的开发人员联系,讨论我的选择。我相信DocuSign的开发人员会监视SO,因此认为这是次要的事情。
答案 0 :(得分:0)
很好的问题。浏览器实现Same Origin Policy。因此,正如我在博客系列中所写的那样(请参阅下面列出的所有三篇文章),您将需要一个CORS网关才能从浏览器本身中运行的Angular程序向DocuSign系统进行API调用。
好消息是,创建私有CORS网关并不难。请参阅系列的第2部分:
您的应用向DocuSign进行API调用时将需要访问令牌。有多种技术可为您的应用提供所需的访问令牌:
作为使用CORS的替代方法,您只需在服务器上实现DocuSign API方法的私有版本即可。然后,您的浏览器应用程序将向您的服务器发送一个private_send_envelope
请求。您的服务器将管理访问令牌,将请求发送到DocuSign,然后将响应中继回浏览器应用程序。
此模式与您有关实现后端服务的问题相同。它将正常工作,但不如在浏览器应用程序中实现所有功能那样优雅。取决于您的SPA近期和将来对API的需求,这可能是个好主意。
在DocuSign具有CORS支持之前,您需要在后端构建一些东西。 CORS网关(仅涉及配置,不涉及软件)或专用API网关。
请询问您的DocuSign销售或技术联系人,以将您的信息添加到内部DocuSign提案中以获取CORS支持PORTFOLIO-1100。这将有助于提高CORS支持的优先级。谢谢。
关于:
我认为我需要将集成商密钥放入SPA中。这样,使用该应用程序的任何人都可以看到。通过阅读文档,我不清楚“泄漏”此键是否可以?
答案:可以并且仅当将IK设置为使用“隐式授权”时才可以将集成器密钥(IK)添加到浏览器应用程序中(请选中IK属性表上的“移动应用程序”复选框)。
在阅读了该内容以及REST API文档之后,我仍然不清楚,如果没有我自己的后端服务的任何支持,是否甚至可以实现类似的东西。
答案:这时您将需要实现私有的CORS网关或实现后端软件。