2015-01-24 12 views
5

Tôi đang sử dụng khung máy chủ web hoạt động chỉ với các yêu cầu GET, hiện tại tôi đang cố chuyển một lượng lớn dữ liệu, đó là nội dung văn bản trong vùng văn bản đến từ đầu vào của người dùng, vào một trang khác lặp lại đầu vào của người dùng.Truyền lượng dữ liệu lớn từ trang này sang trang khác mà không cần POST?

Tôi đã thử Querystrings nhưng tôi sẽ nhận được lỗi "URL được yêu cầu quá dài".

Bất kỳ đề xuất nào về phương pháp nào tôi nên sử dụng?

+1

một khuôn khổ mà chỉ làm việc với yêu cầu GET là khá xấu khuôn khổ – itd

+0

PUT và POST là phương pháp điển hình. Bất kỳ lý do tại sao bạn không sử dụng chúng? – arkascha

+0

Yêu cầu 'GET' bị giới hạn về kích thước. Mặt khác, 'POST' có thể xử lý một lượng dữ liệu tùy ý. – Sirko

Trả lời

1

Nếu bạn chỉ có thể gửi dữ liệu được mã hóa trong yêu cầu GET, thì bạn sẽ phải chia nhỏ yêu cầu và gửi yêu cầu đó trong nhiều phần.

Bạn có thể sử dụng Ajax hoặc lưu toàn bộ tập dữ liệu trong localStorage và tìm nạp từng đoạn văn bản khi trang tải lại.

Một cách tiếp cận sẽ là đưa ra yêu cầu đến điểm cuối phân bổ cho bạn một ID duy nhất. Sau đó gửi một loạt các yêu cầu theo mẫu: ?id=XXX&page=1&data=... trước khi đóng yêu cầu với ?id=XXX&total_pages=27 tại thời điểm đó bạn lắp ráp các phần khác nhau trên máy chủ.

Cách này nằm điên khùng. Sẽ tốt hơn nếu bạn thêm hỗ trợ POST vào khung công tác của mình.

+0

Tôi đồng ý, đặc biệt là với điểm cuối cùng. Bạn có nghĩ rằng bạn có thể giúp với câu hỏi ban đầu của tôi về việc thêm POST để hỗ trợ khung của tôi không? http://stackoverflow.com/questions/27951644/tornado-post-method-not-found – KingAlfredChameleon

1

Thử sử dụng Cookie Javascript. bạn có thể lưu trữ giá trị văn bản ở đó và sau đó đọc nó ở một trang khác (hoặc bất cứ nơi nào bạn muốn).

Dưới đây là một hướng dẫn http://www.w3schools.com/js/js_cookies.asp

Các vấn đề liên quan