Sto lavorando ad un progetto in cui devo esibire un certificato che l'utente ha finito un corso, c'è un URL di API che utilizza il metodo get all'interno di un token di avere accesso a un file pdf, il problema è che non so come mostrare o trasformazione di risposta in formato pdf, utilizzando il flutter Ho provato ad usare il url_launcher di dipendenza, perché il browser visualizza il pdf normalmente, ma il problema è che ho bisogno di passare un token per l'url. la seconda cosa che ho provato è stato per prese la risposta delle api e salvarlo in un temporale file e utilizzare flutter_pdfview di dipendenza, ma non mostra errori. questo è come la risposta delle api, assomiglia a questo:
%PDF-1.4
1 0 obj
<<
/Title (þÿ)
/Creator (þÿ)
/Producer (þÿQt 5.5.1)
/CreationDate (D:20211120205047)
>>
endobj
2 0 obj
<<
/Type /Catalog
/Pages 3 0 R
>>
endobj
4 0 obj
<<
/Type /ExtGState
/SA true
/SM 0.02
/ca 1.0
/CA 1.0
/AIS false
questo è quello che ho provato:
Future LoadPDF(APIurl)async {
Map<String,String> Headers={
'Content-type': 'application/json; charset=UTF-8',
'Accept': 'application/json',
'Authorization': 'Bearer $userToken'
};
final response = await http.get(Uri.parse(APIurl),headers: Headers);
final bytes = response.bodyBytes;
// print(response.bodyBytes);
var dir = await getTemporaryDirectory();
File file = File(dir.path + "/data.pdf");
await file.writeAsBytes(bytes, flush: true);
setState(() {
loadDocument(file);
});
// return file;
}