Mam aplikację angularjs, w której użytkownicy wprowadzają dane zapisane w bazie danych, a następnie po stronie serwera są kompilowane do pliku pdf. Cały dostęp wymaga odpowiednich nagłówków uwierzytelniania. Po wypełnieniu potrzebnych danych użytkownik naciska przycisk, aby zapisać dane, a następnie pobrać plik pdf. Optymalnie nazywam się $window.open(url_generating_pdf
) w mojej aplikacji angularjs. To działa dobrze i otwiera się w innym oknie, ale jak dodać nagłówek uwierzytelniania do tego żądania $window
? W moim rozumieniu nie mogę pobrać pdf i wydrukować go przy pomocy ajax, więc brakuje mi tego uwierzytelnienia. A może istnieją inne sposoby na wywołanie adresu URL z serwera i sprawienie, że plik otworzy się w innym oknie?
10
A
Odpowiedz
6
myślę można dodać to parametry uwierzytelniania w adresie URL i zrobić GET w swojej stronie serwera
//Add authentication headers as params
var params = {
access_token: 'An access_token',
other_header: 'other_header'
};
//Add authentication headers in URL
var url = [url_generating_pdf, $.param(params)].join('?');
//Open window
window.open(url);
Powiązane problemy
- 1. Jak dodać podstawowy nagłówek uwierzytelniania do WebRequest
- 2. Jak dodać token uwierzytelniania?
- 3. Jak dodać nagłówek do żądania SOAP?
- 4. Skrypt powłoki, aby dodać nagłówek do pliku
- 5. Jak dodać nagłówek i podtytuł w Gridview?
- 6. Jak dodać nagłówek i stopkę w Dompdf?
- 7. Jak dodać nagłówek kolumny do ListView w C#
- 8. Jak dodać nagłówek do zapytania w Ajax Jquery?
- 9. Jak dodać nagłówek do widoku listy w Androidzie
- 10. Jak dodać nagłówek do pliku csv w Pythonie?
- 11. Jak dodać nagłówek do zbudowanego obiektu żądania OkHttp?
- 12. Jak dodać nagłówek odpowiedzi wygasającej do odpowiedzi akcji WebAPI?
- 13. Jak dodać nagłówek do HttpWebRequest w aplikacji Windows8?
- 14. Jak dodać niestandardowy nagłówek HTTP do odpowiedzi JAX-RS?
- 15. Chrome: JavaScript window.open do zapisywania
- 16. Jak dodać niestandardowy nagłówek autoryzacji do klienta OData Windows Store App?
- 17. Jak zamienić window.open (...) na POST
- 18. Swift Alamofire dodać niestandardowy nagłówek do wszystkich żądań
- 19. jak mogę dodać pole wyboru, aby TemplateField NAGŁÓWEK?
- 20. Dołącz nagłówek do pliku CSV?
- 21. W ASP.NET, jak dodać nagłówek CORS dla tylko plików TTF?
- 22. Jak programowo dodać nagłówek na UICollectionView z UICollectionViewLayout
- 23. Javascript window.open nie działa
- 24. Jak dodać nagłówek SOAP przy użyciu Java JAX-WS wniosek
- 25. javascript window.open z zwrotnego
- 26. Jak obejść okno window.open zabezpieczeń międzydomenowych
- 27. WKWebView i window.open
- 28. window.open nie skalowalny, przewijane
- 29. Wykrywanie window.open() od UIWebView
- 30. js window.open then print()
W końcu poszedłem sobie z tym problemem. Zrobiłem standardowy plik http.get dla pdf. Zwracam krótki adres URL, aby uzyskać połączenie, które umożliwia nieautoryzowane pobieranie z window.open do nowego okna. Twoje rozwiązanie byłoby również możliwe do zrealizowania. – user2576168
@hmartos Wysłanie Twojego tokena w adresie URL ujawnia go do użycia przez każdego, kto podsłuchuje twoje pakiety wysłane na serwer. Adres URL nigdy nie jest szyfrowany i dlatego może być widoczny dla każdego. Uważaj, aby nie narażać swojego tokena. Według słów Gandalfa: "Zachowajcie to w tajemnicy, zachowajcie bezpieczeństwo". – JFarr
Dzięki za radę @JFarr, jakikolwiek pomysł, jak przekazać token do API, utrzymując go w sekrecie? – hmartos