我想从Artifactory REST API获取长名称,网址和注释字段值。当我从网络应用程序进行编辑时,可以使用这些字段。
当我点击License Search API时,我没有收到这些字段。是否有任何API可用于获取更多详细信息?
许可证搜索API结果
{"uri": "http://localhost:8080/artifactory/api/storage/libs-release-local/org/acme/lib/ver/lib-ver.jar",
"license": "lgplv2",
"found": "",
"status": "approved"}
Webapp显示字段值
答案 0 :(得分:1)
没有'官方' REST API调用。
首先,欢迎a feature request。
其次,您可以通过实施an execution
user plugin自己创建此类端点。它可能需要使用内部API,因此请准备好在升级后进行测试和维护。
Here's a good example让您入门(也使用您需要的确切服务)。
答案 1 :(得分:0)
据我所知,从Artifactory 5.4.6开始,没有正式的API来检索全局许可信息(即 Admin> Configuration> Licenses页面中显示的内容) )。
如果您准备依赖未记录的API,则可以直接调用"许可证导出"网络服务。它没有文档/不公开并输出XML,但似乎运行良好。
curl -u "admin:password" -X GET "http://yourartifactory/artifactory/ui/licenseexport"
将输出
<?xml version='1.0' encoding='UTF-8'?>
<licenses>
<licenses>
<license>
<name>AFL-3.0</name>
<longName>The Academic Free License 3.0</longName>
<url>http://www.opensource.org/licenses/afl-3.0.php</url>
<regexp>((.*)(academic)(.*)|(AFL)+(.*))(3)(.*)</regexp>
<approved>false</approved>
<unknown>false</unknown>
<validLicense>false</validLicense>
<found>false</found>
<notFound>false</notFound>
<notSearched>false</notSearched>
</license>
<license>
[...]
</license>
</licenses>
</licenses>
通过组合licenseexport和licensesearch的输出,您可以编写任何需要的脚本...