亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將文件下載到我們正在執行 API 的系統中

將文件下載到我們正在執行 API 的系統中

楊__羊羊 2021-09-29 10:08:59
我需要從第三方 API 下載文件。我在我的應用程序中編寫了一個 API,它調用第三方 API 并下載文件。我能夠下載文件并成功解壓縮。當我點擊我的 API 時,這些文件被下載到部署代碼的 tomcat 服務器中。但我想將這些文件下載到我正在執行 API 的系統中。假設,如果我將該代碼部署到測試環境服務器并使用來自本地系統的 curl 命令執行我的 API,那么文件應該被下載到我的本地系統中。無論如何我可以在Java中實現這一點嗎?public class SnapshotFilesServiceImplCopy {public static final ILogger LOGGER = FWLogFactory.getLogger();private RestTemplate mxRestTemplate = new RestTemplate();public void listSnapShotFiles(String diId, String snapshotGuid) {    LOGGER.debug("Entry - SnapshotFilesServiceImpl: FI=" + diId + " snapshotGuid=" + snapshotGuid);    ResponseEntity responseEntity = null;    HttpEntity entity = new HttpEntity(CommonUtil.getReportingAPIHeaders());    String resourceURL = "files_url";    try {        responseEntity = mxRestTemplate.exchange(resourceURL, HttpMethod.GET, entity, String.class);    } catch (RestClientException re) {        if (re instanceof HttpStatusCodeException) {            //TO be handled        }    }    String data = (String) responseEntity.getBody();    try {        Object obj = new JSONParser().parse(data);        JSONObject jsonObject = (JSONObject) obj;        JSONArray jsonArray = (JSONArray) jsonObject.get("accounts");        for (int i = 0; i < jsonArray.size(); i++) {            String accountFileURL = (String) jsonArray.get(i);            downloadAccountsData(diId, accountFileURL);        }    } catch (ParseException e) {        e.printStackTrace();    }}
查看完整描述

2 回答

?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

假設,如果我將該代碼部署到 QA 環境中并使用 curl 命令從我的本地系統執行我的 API,那么文件應該被下載到我的本地系統中。無論如何我可以在Java中實現這一點嗎?

如果一個或多個文件作為 HTTP 響應返回到您使用curl.

或者……我想……如果您在本地系統上設置了一個 HTTP 服務器,并且 QA 系統通過向 HTTP 服務器發出 HTTP 請求(API 調用)來“傳送”文件(實際上是反向上傳!) .


查看完整回答
反對 回復 2021-09-29
?
MYYA

TA貢獻1868條經驗 獲得超4個贊

您可以將從第三方 API 接收到的文件存儲在一個文件 ( new File()) 對象中,然后可以將該文件對象保存在所需位置。我需要查看從第三方 API 下載文件的代碼片段才能準確回答。

您正在做的是將文件保存在服務器中(因為 tomcat 中的 Java 程序無法訪問客戶端機器),而不是將其返回給調用您的 API 的客戶端。您需要打開另一個輸出流,并使用該流將文件數據返回到客戶端計算機。您可以參考教程,了解如何使用流下載文件。


查看完整回答
反對 回復 2021-09-29
  • 2 回答
  • 0 關注
  • 248 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號