当我试图使用curl post命令将jar文件推送到gitlab时,我收到了一个400 Bad请求错误。这种情况只发生在Jar文件中。我可以推送文本&json文件成功。我正在使用以下命令发布文件。
curl -v --request POST
--header "PRIVATE-TOKEN:<token provided>"
--form "branch=develop"
--form "commit_message=<message provide>"
--form "action[][action]=create"
--form "action[][file_path]=<path provided>
--form "action[][content]=<app.jar"
"https://registry.com/api/v4/projects/111/repository/commits"
请有人告诉我我在这里缺了什么。
感谢
通过使用base64编码对jar/war文件进行编码,我能够将二进制文件POST到gitlab
base64--包装0 app.jar>app.jar
并运行上面的命令。
查看错误400的可能原因,错误的一个潜在原因是jar文件太大:
客户端上载的文件可能太大
大多数web服务器或应用程序都有明确的文件大小限制,以防止上传过大的文件,堵塞服务器中的带宽和其他资源。在许多情况下,当文件太大时,服务器会产生400错误请求错误(因此,请求无法完成(。
通过尝试提交一个小jar文件来验证这一点,并查看在这种情况下是否有效。