我正在开发一个 JS 应用程序,并且正在使用许多开源依赖项。我需要创建一个包含每个包的许可证信息的页面。我的应用程序当前能够从 JSON 文件读取许可证列表并呈现它。我不想手动创建此文件,因为它很乏味并且很容易过时。幸运的是,所有依赖项都列在我的 package.json 中,因此理论上应该很容易以编程方式生成它,不幸的是我还没有找到方法。
看起来几乎所有东西在其存储库的根目录中都有一个“LICENSE”文件,所以如果我有一个可以下载和处理每个文件的 gulp 脚本,那么可以工作。不幸的是,我无法找到一种以编程方式查询 NPM 包的存储库地址的方法。如何实现这一目标?
最佳答案
独自可靠地完成这件事将会很困难。 AFAIK,npm 包的发布者不需要提供许可证,或者至少不需要以标准方式提供许可证。
幸运的是,this package能够显示在 node_modules
中找到的所有包的许可证信息。它还有一个简单的 API,因此获取信息并将其显示在网页上应该相当容易。
关于node.js - 以编程方式获取 NPM 包的许可证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49849962/