/ / Ako nahrať súbor v Telegram Bott api pomocou klienta Http? - upload, multipart, telegram-bot, najznámejší

Ako nahrať súbor v aplikácii Telegram Bott api pomocou Http klienta? - upload, multipart, telegram-bot, unirest

Snažil som sa odosielať súbory pomocou údajov z viacerých častí, ale všetko, čo dostanem, je nasledujúca chyba:

{"description": "Chyba: Chybná požiadavka: chat_id je prázdna", "error_code": 400, "ok": false}

Tu je môj útržok kódu. Môže mi niekto pomôcť, kde sa dopúšťam chyby?

public HttpResponse<jsonnode> sendDocument(Integer chat_id,File f1) throws UnirestException {
return Unirest.post(endpoint + token + "/sendDocument")
header("accept", "application/json")
.field("chat_id", chat_id)
.field("document", f1)
.asJson();
}

odpovede:

0 pre odpoveď č. 1

dobre, povedal chat_id je prázdny. to je zrejmá chyba! ale pre vašu otázku existujú len dva spôsoby, ako poslať dokument k telegramu.

  1. tento súbor je už na ich serveroch, takže by ste mali len prejsť súbor_id v poli „document“
  2. chcete nahrať súbor zo svojho zariadenia a ako sa hovorí

Musí byť zaúčtované pomocou multipart / form-data obvyklým spôsobom tak, že súbory budú nahrané cez prehliadač

Ak robíte sekciu odovzdávania správne, potom sa uistite, že chat_id nie je prázdny.