【问题标题】:CURL Command To Create A File On ServerCURL 命令在服务器上创建文件
【发布时间】:2017-08-16 18:40:43
【问题描述】:

我在我的一台计算机 (Machine1) 上构建了一个迷你程序/服务器,我正在尝试通过 cURL 在另一台计算机 (Machine2) 上创建或覆盖文件。所以 Machine2 连接到 Machine1。我一直在查看 cURL 的文档以查找可以执行此操作但没有运气以及堆栈溢出的命令。

https://curl.haxx.se/docs/manpage.html

我也尝试过这篇 SO 帖子中的示例:

HTTP POST and GET using cURL in Linux

知道命令提示符下的命令是什么吗? (相当于 POST 命令)。到目前为止,我已经尝试过使用 -O、-K、-C 和许多其他没有用的方法。

【问题讨论】:

  • 所以,curl 不是魔法。远程服务器上有哪些协议/API? FTP? SSH?某种 WebDAV API?
  • HTTP get and post...服务器只是一个python文件
  • 要使用 GET 和 POST,您需要在服务器上运行某种服务器进程。您正在运行的 python 代码是否提供某种 API? curl 不能随便创建文件;它只是其他实现之上的协议客户端。在 API 案例中,它假定现有的 HTTP 端点可以执行您需要的操作(没有用于创建文件的通用 HTTP GET/POST)
  • @lucyb 你的问题回答正确了吗?如果是,也许你可以“接受”我的回答?

标签: http curl post command-line cmd


【解决方案1】:

在命令行中,您只需使用curl --form 模拟multipart/form-data POST 请求:

curl --form "testfile=@thefilename.jpg" http://<Machine2>/<Path>

testfile是表单的字段名,不介意的话随便用英文就行。

@ 在这里用于将文件thefilename.jpg 作为文件上传附加到帖子中。参考curl man doc

在服务器端,应该监听 URL http://&lt;Machine2&gt;/&lt;Path&gt;。当 curl 发送上一个 POST 请求时,服务器端程序应该得到它,提取附件(thefilename.jpg),并保存到磁盘。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-17
    • 2012-07-20
    • 2018-11-18
    • 1970-01-01
    • 1970-01-01
    • 2017-04-02
    • 1970-01-01
    相关资源
    最近更新 更多