簡體   English   中英

帶有邊界的放心的解析身體響應

[英]Restassured Parse Body response with boundary

我使用RestAssured,並且嘗試通過de GET調用下載文件。

我的問題是請求主體是有邊界的。

因此我得到的文件包含太多信息,無法使用。 這是一個下載的簡單文本文件的內容示例:

--a8f82a89-d9c2-4fcb-a612-06e286bfcf66 Content-Disposition:表單數據; NAME = “元數據”; filename =“ metadata”內容類型:application / json {“ name”:“ Fichier_de_calcul.txt”,“ id”:{“ metadata”:{“ deleted”:false,“ ephemeral”:false,“ synthesized”:true “systemOwned”:真實的, “readOnly的”:假的, “synchronisable”:真實的, “createdOn”: “2018-11-09T15:36:39Z”, “已啟用”:真實的, “lastModifiedOn”:“2018-11- 09T15:36:40.444Z“},” value“:{” @ type“:” CoreKit.UUIDKey“,” value“:” 4de39a67-0075-4232-a236-09ab8d10aed9“}}} --a8f82a89-d9c2-4fcb -a612-06e286bfcf66內容處置:表格數據; NAME = “@類型”; filename =“ @ type” Content-Type:文本/純文本CoreKit.FileMetadataAndFile --a8f82a89-d9c2-4fcb-a612-06e286bfcf66 Content-Disposition:表單數據; NAME = “文件”; filename =“ file”內容類型:application / octet-stream 2 4 6 8 10 --a8f82a89-d9c2-4fcb-a612-06e286bfcf66--

這是我用來獲取該文件的代碼:

    Response resp = RestAssured.given().headers(headers).get(url);
    byte[] fileContent = resp.body().asByteArray();
    File fileToSave = new File(classPath);
    try {
        Files.write(fileContent, fileToSave);
    } catch (IOException e1) {
        e1.printStackTrace();
    }

有人知道我該怎么做:

解析正文(我想獲取“ filename”參數)基於“ application / octet-stream”部分創建下載的文件。

謝謝=)

您可以在下面的方法中嘗試一下:您可以設置所有標頭,並使用您的網址獲取請求。

    Response response=RestAssured.given().header("Content-Type", "application/json").get("yourURL").then().contentType(ContentType.JSON).extract().response();
String finaleNAme=response.jsonPath().get("jsonValuewhichyouwanttoget");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM