10/10/2018, 11:01

Nút Like bị lỗi khi máy client ko vào được Facebook

Cách đưa nút Like vào website bây h đã phổ biến. Đây là một cách quảng bá website của mình. Nhưng bạn đã nghĩ đến trường hợp máy khách không vào được FB (Ko biết sử dụng Open DNS, Google DNS,...) mà số này nhiều lắm. Có phải ai cũng "thông minh" và nhiều "thủ đoạn" như dân IT đâu.
Khi máy khách không vào được FB thì nút Like sẽ bị lỗi. Nhìn website sẽ rất xấu.
Bạn có cách nào check sự kiện này không...?
jiSh@n viết 13:03 ngày 10/10/2018
Ko vào dc FB thì nút like nó ko dc load, ko hiện ra thôi chứ bị lỗi chỗ nào
lytamhoana6cntt viết 13:02 ngày 10/10/2018
Thì đang tìm cách check cái đó mà
phamhaucn viết 13:12 ngày 10/10/2018
Thử dùng ajax thử xem có vào được facebook không, rồi gửi lên server hay là xử lý ngay phía client cũng được
zinki viết 13:06 ngày 10/10/2018
@jiSh@n : nếu dùng iframe thì cái iframe nó vẫn tồn tại và load trang "could not connect to server"

@phamhaucn: bạn thử dùng AJAX chưa, mình chưa thử nhưng mình nghĩ là không được vì còn phải dính vào Oauth nữa.
happyface viết 13:14 ngày 10/10/2018
ajax mà bắn qua facebook đc à?
bka viết 13:09 ngày 10/10/2018
Được gửi bởi happyface
ajax mà bắn qua facebook đc à?
bắn đc chứ . nó có graph api đó , trả về là một chuỗi json nên có thể dùng với jquery đc. check cái sau

Code:
https://graph.facebook.com/113531122048949
nếu nó work thì show cái like ra .
vấn đề về Oauth thì bạn vẫn có thể dùng frame cho nó mà bằng cách tạo title , url trong khai báo thẻ Oauth của frame thui
gamenhe viết 13:03 ngày 10/10/2018
viết đoạn js check xem link có tồn tại hay ko, trả về true thì cho hiện like, false thì bỏ qua.

function checkUrl(url) {
var request = false;
if (window.XMLHttpRequest) {
request = new XMLHttpRequest;
} else if (window.ActiveXObject) {
request = new ActiveXObject("Microsoft.XMLHttp");
}

if (request) {
request.open("GET", url);
if (request.status == 200) { return true; }
}

return false;
}
Bài liên quan
0