Tôi đã sử dụng mã "request.getHeader (" Referer ");" Mã này dường như hoạt động tốt. Nhưng gần đây tôi phát hiện ra rằng nó không hoạt động trong IE. IE đã ném null. Bây giờ tôi không còn biết làm thế nào để đi tiếp. Có cách nào khác cho tiêu đề "Người giới thiệu" có thể nhận liên kết trước đó và hoạt động chính xác trong tất cả các trình duyệt không? Đặt tiêu đề tùy chỉnh từ liên kết trước không phải là tùy chọn khả thi đối với tôi. Vì vậy, ai đó hãy giúp tôi về điều này. Cảm ơn.Thay thế cho tiêu đề "Người giới thiệu"
Trả lời
Mục nhập "Giới thiệu" là tùy chọn. Bạn không thể dựa vào nó hiện diện. Không có cách nào để duyệt liên kết trước vì điều này phụ thuộc vào cài đặt người dùng và cấu hình proxy (tức là những gì mà quản trị viên hệ thống cho rằng họ nên cho phép bạn xem).
Bạn phải tìm cách sống mà không có thông tin này.
Nếu vậy, có cách nào để tôi nhận liên kết trước đó trong IE không? –
Tôi không nghĩ đó là đặc trưng của IE. Hầu hết các trình duyệt đều cho phép bạn hủy kích hoạt tiêu đề tham chiếu (r) và nếu bạn nhập url vào thanh vị trí theo cách thủ công, cũng sẽ không có một tham chiếu. Bạn không được phụ thuộc vào thông tin của người giới thiệu. –
Không rõ bạn cần gì, nhưng tôi nghi ngờ rằng bạn cần nó để có thể quay lại một số "trang đầu tiên" tại cùng một trang web khi một số hành động kết thúc. Tùy chọn tốt nhất của bạn là sau đó chuyển URI yêu cầu xung quanh dưới dạng tham số yêu cầu. Ví dụ. một liên kết đăng nhập:
<a href="/login?from=${pageContext.request.requestURI}">login</a>
Trong biểu mẫu đăng nhập, duy trì nó cho yêu cầu tiếp theo là giá trị đầu vào ẩn có dạng:
<input type="hidden" name="from" value="${param.from}">
Trong phương thức action login, chỉ cần chuyển hướng đến URL mà sau khi kết thúc hành động.
response.sendRedirect(request.getParameter("from"));
Nếu đây không phải là những gì bạn đang tìm kiếm, thì bạn nên thực sự giải thích câu hỏi của mình để hỏi cách đạt được yêu cầu chức năng hơn là hỏi cách đạt được giải pháp (sai).
Dựa vào bất kỳ luồng logic kinh doanh nào trên người giới thiệu thực sự là một ý tưởng tồi từ đầu. Bài học về nhà phát triển web đầu tiên của bạn phải là: người dùng cuối có đầy đủ kiểm soát những gì họ gửi cùng với yêu cầu HTTP. Bạn không nên dựa vào tất cả các thông tin đó có mặt, hãy để mình một mình chính xác 100%.
- 1. Đặt tiêu đề Người giới thiệu trong asp.net
- 2. Giới thiệu về Generics và Inheritance (tha thứ cho tiêu đề xấu)
- 3. Giới thiệu về C# cho người dùng C/C++
- 4. Chặn bởi người dùng hoặc người giới thiệu trống
- 5. Nodejs thể hiện tiêu đề yêu cầu - nhận được liên kết giới thiệu, v.v.
- 6. Apache HttpClient 4.0-beta2 httppost, cách thêm người giới thiệu?
- 7. thay đổi liên kết giới thiệu của Bài đăng Ajax
- 8. Giới thiệu về đa luồng
- 9. Chuyển hướng đến url của người giới thiệu trong codeigniter
- 10. Kiểm tra giới thiệu
- 11. Giới thiệu về con trỏ trong Mục tiêu-C
- 12. Giới thiệu Ocaml
- 13. Quay lại trang giới thiệu
- 14. Giới thiệu về RenderScript
- 15. trình duyệt nào không gửi thông tin người giới thiệu?
- 16. Gửi người dùng trở lại trang giới thiệu
- 17. Hệ thống giới thiệu trang web
- 18. Giới thiệu khung công tác web cho Clojure
- 19. Haskell - Giới thiệu về Curried
- 20. URL giới thiệu trong php
- 21. Giới thiệu Forall trong coq?
- 22. Giới thiệu Linux Distro cho Android Development Workstation
- 23. Bạn muốn giới thiệu CMS CMS nào cho trang web?
- 24. Giới thiệu về lớp System.Linq.Lookup
- 25. Sâu bản sao tiện ích giới thiệu
- 26. Bạn muốn giới thiệu plugin State Machine nào cho Rails?
- 27. Giới thiệu về toàn màn hình và không có thanh tiêu đề nào từ tệp kê khai
- 28. Giới thiệu về lập trình GPU
- 29. Chrome.History lấy URL giới thiệu (JS)
- 30. Nhận giới thiệu HTTP khi chuyển hướng
Thẻ jsp gợi ý rằng bạn đang cố gắng truy cập các tiêu đề trong các tệp jsp. Bạn không nên làm điều đó. Xử lý Java thuộc về một bộ điều khiển, không phải trong một thành phần khung nhìn. –
Vậy thì cách tốt nhất để tiếp cận trong trường hợp này là gì? Tôi cần thêm thời gian đăng nhập cuối cùng của người dùng. –