gpt4 book ai didi

mongodb - 尝试自动上传文件时出现 curl 错误-http没有此类文件

转载 作者:行者123 更新时间:2023-12-02 19:16:44 28 4
gpt4 key购买 nike

我已经搜索了各种问题,并尝试了curl命令的不同排列,但是还没有找到一个可行的作品,因此发布问题,因为我很可能会遗漏一些明显的东西,看不到它。
我正在运行curl命令,尝试上载文件进行解析。

S-MBP:project SG$ curl -i -X POST -F "data=@/Users/SG/Desktop/project/mongodb-cluster-shard-00-02.lrqcr.mongodb.net_27017-cluster.bson.gz" 'http://localhost:3030/upload/'
HTTP/1.1 100 Continue

HTTP/1.1 200 OK
Access-Control-Allow-Headers: accept, content-type
Access-Control-Allow-Methods: POST
Access-Control-Allow-Origin: *
Date: Sat, 25 Jul 2020 14:56:05 GMT
Content-Length: 19
Content-Type: text/plain; charset=utf-8

http: no such file
根据先前的答案尝试了一些排列:
curl -i -X POST -F "filename=@/Users/SG/Desktop/project/mongodb-cluster-shard-00-02.lrqcr.mongodb.net_27017-cluster.bson.gz" http://localhost:3030/upload/

curl -i -X POST -F "filename=@mongodb-cluster-shard-00-02.lrqcr.mongodb.net_27017-cluster.bson.gz" http://localhost:3030/upload

curl -i -X POST -F filename=@/Users/SG/Desktop/project/mongodb-cluster-shard-00-02.lrqcr.mongodb.net_27017-cluster.bson.gz http://localhost:3030/upload/

curl -i -X POST -F "filename=@/Users/SG/Desktop/project/mongodb-cluster-shard-00-02.lrqcr.mongodb.net_27017-cluster.bson.gz" "http://localhost:3030/upload/"
有趣的是,如果传入不存在的文件名,则会收到相同的错误,但是如果将目录名称更改为不存在的文件,则错误为curl(26),使我认为该命令现在可以不在乎文件了。如果没有相关性,我可以在Mac上运行此程序,我看到一则帖子暗示冲泡 curl 可能存在问题。
我尝试定位的表单是docker image https://hub.docker.com/repository/docker/simagix/maobi的一部分
省略一些值的表格
<form action="/upload" id="maobi" class="dropzone dz-clickable dz-started">
<div class="dz-message">
Drop files here or click to upload.<br>
</div>
<div class="dz-filename"><span data-dz-name="">mongodb-cluster-shard-00-02.lrqcr.mongodb.net_27017-cluster.bson.gz</span></div></div></form>
然后是我在页面中看到的脚本,我认为该脚本用于上传,然后解析生成输出的文档。
    <script>
Dropzone.options.maobi = {
timeout: 300000,
init: function() {
this.on("success", function(file, responseText) {
blob = new Blob([responseText], { type: 'text/html' }),
anchor = document.createElement('a');
filename = file.upload.filename;
if ((n = filename.indexOf("mdiag-")) == 0 ) {
n = filename.lastIndexOf(".json")
filename = filename.substring(0, n) + ".html";
} else if ((n = filename.lastIndexOf(".json")) > 0 ) {
//...
//...
} else if ((n = filename.indexOf(".log")) > 0 && (n = filename.lastIndexOf(".gz")) > 0) {
filename = filename.substring(0, n) + ".html";
} else if ((n = filename.lastIndexOf(".bson")) > 0 ) {
filename = filename.substring(0, n) + "-cluster.html";
}
anchor.download = filename;
anchor.href = (window.webkitURL || window.URL).createObjectURL(blob);
anchor.dataset.downloadurl = ['text/html', anchor.download, anchor.href].join(':');
anchor.click();
});
this.on("error", function(file, responseText) {
alert(responseText);
});
}
};
</script>

最佳答案

在我看来,您没有在正确的表单字段中传递文件。
通过查看Dropzone.js文档,似乎正确的字段名称是file(因为这是 paramName configuration的默认值),而不是datafilename。但是要完全确定,最好是在浏览器的devtools中查看网络请求,并查看在其中使用什么POST字段名称来传递文件。

curl -i -X POST -F "file=@/Users/SG/Desktop/project/mongodb-cluster-shard-00-02.lrqcr.mongodb.net_27017-cluster.bson.gz" 'http://localhost:3030/upload/'

关于mongodb - 尝试自动上传文件时出现 curl 错误-http没有此类文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63090042/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com