10/10/2018, 10:48

Facebook dùng kĩ thuật gì mà load được như vậy?

Nếu các bạn sử dụng Facebook trên Firefox sẽ thấy rằng mỗi khi click vào 1 link, nó sẽ thay đổi phần hash trên URL chứ không load lại toàn bộ trang, dựa vào sự thay đổi của phần hash này mà chỉ cần 1 phần nội dung được update bằng AJAX, cho nên Facebook load khá nhanh.

Điều tôi thắc mắc là: nếu bạn dùng Facebook trên Chrome thì sẽ thấy rằng mỗi khi click vào 1 link, toàn bộ URL trên thanh address bar sẽ thay đổi, nghĩa là toàn bộ trang phải được load lại, thế nhưng cảm giác như là nó dùng AJAX vậy. Làm sao làm được như vậy? Hay là Chrome hiểu cấu trúc URL của Facebook nên nó chỉ hiển thị phần hash (URL đẹp) cho thân thiện với người dùng?

Ví dụ: dùng trình duyệt Chrome truy cập vào trang http://www.facebook.com/facebook?v=wall click qua tab info thì address bar trở thành http://www.facebook.com/facebook?v=info nhưng ta không thấy toàn bộ trang được load lại. Nếu bạn kéo thanh scrollbar xuống 1 chút để logo vừa được che lấp rồi click qua lại 2 tab info và tab wall thì cũng không thấy nó nhảy về đầu trang.
snoob viết 12:55 ngày 10/10/2018
Chưa đọc kĩ đã ........
-------------
Update: Vụ này không biết
khonggiannet viết 13:02 ngày 10/10/2018
Được gửi bởi snoob
Chắc cũng là AJAX + thay đổi hash
spammer
kuangnd viết 12:49 ngày 10/10/2018
Đó là dùng Cache chứ dùng gì. FaceBook dùng memcached. ChoXe.net cũng đang dùng memcached.
khonggiannet viết 13:02 ngày 10/10/2018
Được gửi bởi kuangnd
Đó là dùng Cache chứ dùng gì. FaceBook dùng memcached. ChoXe.net cũng đang dùng memcached.
Bác biết thì trả lời dùm, không biết thì đừng spam dùm em. Em thắc mắc nên muốn hỏi thật mà. Thanks
không dây viết 12:52 ngày 10/10/2018
đặt chỗ theo dõi các coder trả lời ^^
snoob viết 12:54 ngày 10/10/2018
Được gửi bởi kuangnd
Đó là dùng Cache chứ dùng gì. FaceBook dùng memcached. ChoXe.net cũng đang dùng memcached.
Đọc kĩ câu hỏi chưa cha (y như tui)
---------------
Update tập 2:
Sau 1 hồi search, hỏi han thì kết quả là vầy, thật chất khi nhấn tab info, thì link thật là :
http://www.facebook.com/facebook?v=i...acebook?v=info
Nhưng mấy bác chỉ thấy
http://www.facebook.com/facebook?v=info
Là do cái này là tính năng của chrome (hoặc mấy trình duyệt mới hỗ trợ HTML5 (em nghĩ thế),nó tự sữa url lại thôi, ko tin dùng IE hoặc FF 3.6 (hình như FF 4 thì đã có tính năng này rồi)thử sẽ thấy link thật.
More info tại đây
http://code.google.com/web/ajaxcrawl...g-started.html
và đây
http://www.w3.org/TR/html5/history.h...tory-pushstate
s.code viết 12:50 ngày 10/10/2018
Vừa dùng ajax vừa dùng Iframe. Ajax có nhược điểm hay bị die nếu requestion liên tục và 1 thời gian dài. Nhưng iframe thì không.
thuyduongcd viết 13:02 ngày 10/10/2018
Thử cách này xem
Code:
<a href="#abc" onclick="document.location='....'">
Sunday viết 12:56 ngày 10/10/2018
hơ, chẳng hiểu gì luôn. Ai biết giải thích giùm tôi tất cả những gì mọi người đang bàn thảo với.
tại sao lại là link và memcache?? ajax? còn cả html4, html 5....
Bài liên quan
0