Curl更改multipart / form-data path参数

问题描述 投票:0回答:1

我尝试使用msys shell中的curl将一些multipart / form-data数据发送到名为Synology的NAS。表单数据需要一个名为“path”的参数,并且必须格式化为“/ dir / dir2”。斜杠无法更改。 我的问题是,当我使用curl时,路径变量将更改为“C:/ git-sdk-64 / dir / dir2”,我不知道如何防止它。我的命令如下:

curl -X POST \
  'http://url:port/webapi/entry.cgi?_sid=secret&api=SYNO.FileStation.Upload&method=upload&version=2' \
  -F "path=/dir/dir2" \
  -F 'overwrite=true' \
  -F 'filename=@/c/Temp/test.txt'
shell curl msys synology
1个回答
0
投票

感谢Daniel Stenberg's信息我发现这是msys self的“问题”。 Msys填充路径变量。写下来http://www.mingw.org/wiki/Posix_path_conversion。解决方案是在路径的末尾添加分号。完整命令现在看起来像这样:

curl -X POST \
  'http://url:port/webapi/entry.cgi?_sid=secret&api=SYNO.FileStation.Upload&method=upload&version=2' \
  -F "path=/dir/dir2;" \
  -F 'overwrite=true' \
  -F 'filename=@/c/Temp/test.txt'
© www.soinside.com 2019 - 2024. All rights reserved.