Pracuję w projekcie, gdzie muszę pokazać zaświadczenie o tym, że użytkownik ukończył kurs jest adres URL API, który korzysta z metody get w токене, aby uzyskać dostęp do pliku pdf, problem w tym, że nie wiem, jak pokazać lub przekonwertować odpowiedzi do formatu pdf za pomocą flutter, Próbowałem użyć zależność url_launcher, bo w przeglądarce pojawia się zazwyczaj pdf, ale problem w tym, że muszę przekazać token na ten adres URL. po drugie, co próbowałem, to odpowiedź api, zapisz go w pliku tymczasowym i używać zależność flutter_pdfview, ale pokazuje błąd. oto jak wygląda odpowiedź api:
%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
to jest to, co próbowałem:
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;
}