【发布时间】:2020-10-31 08:17:18
【问题描述】:
我觉得这很难证明一个比另一个更合理。我在 stackoverflow 看到很多人都做这两种变体。有些只是从他们的程序外部调用 cURL 控制台命令(例如:curl "content=hello world" -X POST https://example.com -H "charset=UTF-8")。其他人导入库并在程序内部以编程方式调用它。
所以我的问题是关于未来即将到来的项目,是否值得包含库并设置所有这些。还是从命令行调用 cURL 并读取它的响应只是一个更聪明的选择?
出于好奇,为什么不是每个人都做其中一种变体?为什么有些人使用控制台命令而其他包括库,以后可能会有一些陷阱吗?
【问题讨论】:
-
简短的回答是肯定的。为什么?当您使用命令行变体(通过
system或fork和execv)时,您将产生多个进程。如果考虑效率,那么额外的开销是一件坏事。否则它是一个清洗,但请注意curl的输出将包含 DOS 行尾,如果在 Linux 上可能会导致意外。 -
在没有安装 curl 应用程序的机器上你会做什么?似乎也非常基于意见。
-
@RetiredNinja 他们通常将 curl.exe 命令行应用程序放在您安装程序的位置,以防他们选择不将其包含到程序中
-
@CoffeDev 当然,但不在移动设备或控制台上。