Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
对于JSON API身份验证目的,可以将以下参数发布/附加到每个JSON API URL:
示例:
假设用户名和密码分别为“user1”和“password1”,我们可以使用以下jQuery脚本将用户名和密码发布到JSON API。
<script> $(document).ready(function(){ $.ajax({ type: "POST", url: 'http://localhost:8080/jw/web/json/workflow/assignment/list/pending', data: { j_username : 'user1', j_password : 'password1' }, success: function(res) { console.log(res) }, dataType: "json" }); }); </script>
如果您更喜欢使用哈希密码,则可以使用以下脚本。
请注意,哈希密码上的支持是基于您正在使用的目录管理器。某些目录管理器插件可能不支持这种类型的身份验证方法。
每个目录管理器的格式和哈希方法也可能不同。
<script> $(document).ready(function(){ $.ajax({ type: "POST", url: 'http://localhost:8080/jw/web/json/workflow/assignment/list/pending', data: { j_username : 'user1', hash : 'D012B772672A55A0B561EAA53CA7734E' }, success: function(res) { console.log(res) }, dataType: "json" }); }); </script>
使用参数进行身份验证时,您可以使用主身份凭证作为其他用户登录到性能工作流程活动。
要使用它,请在系统设置 > 常规设置下设置主登录用户名和主登录密码 。 通过设置这些值,可以通过传入“loginAs”参数来指定不同的用户。
请注意,只有在必要时才启用。泄漏您的主证书将允许其他人执行所有不需要的JSON API调用。
假设主登录用户名和主登录密码分别为“master”和“master”,则主登录哈希为“ E505CF727D214A68CB03DA25DA978500 ”。
以下示例展示了如何使用Master Credential以“user1”身份登录。
<script> $(document).ready(function(){ $.ajax({ type: "POST", url: 'http://localhost:8080/jw/web/json/workflow/assignment/list/pending', data: { j_username : 'master', j_password : 'master', loginAs : 'user1' }, success: function(res) { console.log(res) }, dataType: "json" }); }); </script>
使用master登录哈希:
<script> $(document).ready(function(){ $.ajax({ type: "POST", url: 'http://localhost:8080/jw/web/json/workflow/assignment/list/pending', data: { j_username : 'master', hash : 'E505CF727D214A68CB03DA25DA978500', loginAs : 'user1' }, success: function(res) { console.log(res) }, dataType: "json" }); }); </script>
从V4开始, Joget工作流在JSON API认证中被支持基本的HTTP认证,你可以在头中传递凭证。
示例:
假设所需的用户名和密码分别为“user1”和“password1”,我们可以使用以下jQuery脚本将Basic Auth头设置为JSON API。
<script> $(document).ready(function(){ $.ajax({ type: "POST", url: 'http://localhost:8080/jw/web/json/workflow/assignment/list/pending', beforeSend: function (xhr) { xhr.setRequestHeader ("Authorization", "Basic dXNlcjE6cGFzc3dvcmQx"); }, success: function(res) { console.log(res) }, dataType: "json" }); }); </script>