我正在尝试上传一个xml文件。当使用MultipartEntityBuilder将二进制格式的文件添加到HttpEntity时,我收到以下错误
org.apache.http.ProtocolException: The server failed to respond with a valid HTTP response
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:149) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:56) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259) ~[httpcore-4.4.6.jar:4.4.6]
我已经通过了链接
https://www.baeldung.com/httpclient-multipart-upload
我的理解是,该文件不被接受,因为http实体无法发送MultipartEntityBuilder,但我可能错了。
HttpPost postRequest = new HttpPost("link to server");
postRequest.setHeader("name1", "value");
postRequest.setHeader("name2", "value2");
File file1 = new File(file.getOriginalFilename());
file1.createNewFile();
FileOutputStream fileOutputStream = new FileOutputStream(file1);
fileOutputStream.write(file.getBytes());
fileOutputStream.close();
MultipartEntityBuilder multipartEntityBuilder =
MultipartEntityBuilder.create();
multipartEntityBuilder.addBinaryBody("file", file1);
HttpEntity httpEntity = multipartEntityBuilder.create().addPart("file", new FileBody(file1)).build();
postRequest.setEntity(httpEntity);
我怀疑您的代码基本上是正确的,但要么服务器URL错误,要么服务器响应不正确——就HTTP协议而言。
如果您的代码无法发送正确的HTTP请求,我希望服务器使用相应的HTTP 4xx响应代码进行响应。
正如前面的章节中讨论的那样,当一个 Web 服务器响应一个 HTTP 请求时,响应通常包括一个状态行、一些响应报头、一个空行和文档。一个典型的响应如下所示: HTTP/1.1 200 OK Content-Type: text/html Header2: ... ... HeaderN: ... (Blank Line) <!doctype ...> <html> <head>...</he
问题内容: 我是Go的新手,我正在尝试构建一个简单的HTTP服务器。但是我在JSON响应中遇到了一些问题。我编写了以下代码,然后尝试邮递员发送一些JSON数据。但是,我的邮递员总是得到空响应,而is 。然后,我在http://www.alexedwards.net/blog/golang-response- snippets#json中 检查了一个示例。我复制并粘贴了示例,并且效果很好。但是我看不
在此处输入图像说明public class GemfireTest extends SecurityManager{ C:\users\xxx\ideaprojects\gemfire on Desktop-MRCV2EH[40404]中的服务器,因为server1当前联机。进程ID:2640正常运行时间:7秒Geode版本:9.5.1 Java版本:1.8.0_171日志文件:C:\users\
刚开始使用wiremock,遇到了一个场景,我想用一个特定的json响应来存根GET请求。 将json附加到预期响应时; 我得到例外java.io.FileNotFoundException: src/test/资源/__files/product.json(没有这样的文件或目录)。 问题是我在这个位置有json文件。
问题内容: 我正在尝试使用http客户端通过为单个主机设置最大连接来访问服务器 HttpParams httpParam = httpclient.getParams(); HttpConnectionParams.setSoTimeout(httpParam,SOCKET_TIMEOUT); 那就是我们使用连接池来实现http持久性。 我们偶尔会收到此错误: 有谁知道如何解决这个问题? 我们也将
我在8000和8001端口上的本地linux机器上运行着金刚,在5000和5001端口上的docker容器中也运行着金刚。 我的应用程序正在tomcat服务器上的另一个容器上运行,端口8811(端口fwd从8811到8080) 我已经配置了以下API配置我的Kong容器, 和我的linux机器金刚以下API配置, 当我做curl访问我的示例API时,我看到以下来自我的Kong容器的错误响应, 如果