0
想使用REST保證的發佈此捲曲要求:無法轉換捲曲POST請求放心請求
curl -X POST --data-binary @C:\Leo.jpg "http://<url>/<resource>?apikey={key}&outputMode=json&imagePostMode=raw"
這裏是休息保證的要求:
File file = new File(<file-path>);
InputStream docstream= getClass().getClassLoader().getResourceAsStream("<image-file-name>.jpg");
Response resp = given()
.header("Content-Length", file.length())
.contentType(ContentType.BINARY)
.contentType("multipart/form-data")
.contentType("multipart/x-www-form-urlencoded")
.formParam("apikey", apiKey)
.formParam("outputMode", "json")
.formParam("imagePostMode", "raw")
.content(docstream)
.multiPart(new MultiPartSpecBuilder(docstream)
.fileName(file.getName())
.controlName("img_file")
.mimeType("image/jpeg").build())
.post("<resource>")
.then()
.statusCode(200)
.extract().response();
捲曲請求返回服務器的預期響應,但REST-Assured請求返回:
org.apache.http.client.ClientProtocolException
at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:886)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
at org.apache.http.client.HttpClient$execute$0.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133)
at com.jayway.restassured.internal.RequestSpecificationImpl$RestAssuredHttpBuilder.doRequest(RequestSpecificationImpl.groovy:1827)
已嘗試c懸掛標題,multiPart幾種方式沒有任何運氣。任何幫助非常感激!謝謝。