Tôi đang phát triển một trang web thương mại điện tử PHP/MySQL với một số khía cạnh xã hội và đang tìm cách tích hợp nó với Facebook. Tôi đã có hệ thống xử lý phiên đăng ký/người dùng gốc. Tôi đã quản lý để bao gồm iframe "Plugin mạng xã hội", chẳng hạn như nút "Thích". Nhưng tôi thực sự muốn cung cấp cho người dùng tùy chọn đăng ký với trang web qua Facebook qua quá trình đăng ký gốc.Đăng nhập Facebook dưới dạng bổ sung cho thông tin đăng nhập hiện tại?
Tôi hiểu ý tưởng nhận mã thông báo truy cập qua giao thức OAuth và cuối cùng nhận được ID người dùng. Mối quan tâm của tôi là hai lần:
Phương pháp này có an toàn không? Đây là trang web thương mại điện tử, nhưng tôi không lưu trữ bất kỳ thẻ tín dụng hoặc bất kỳ dữ liệu nhạy cảm nào khác. Tôi không thể nghĩ nó có thể bị khai thác như thế nào, nhưng tôi chỉ là một đầu!
Tôi hiểu cách lấy mã thông báo ban đầu và nhận ID người dùng trong quá trình đăng ký. Nhưng làm thế nào để tôi nhận ra một người dùng trả về (phiên)? Tôi có phải triển khai SDK Javascript cho điều đó (thứ mà tôi muốn tránh) không? Hoặc, tôi có xử lý các phiên giống như chúng đã được xử lý tự nhiên hay không, nhưng thay thế ID người dùng thông thường trong cookie phiên bằng ID người dùng Facebook khi thích hợp?
Tôi xin lỗi nếu câu trả lời là hiển nhiên. Tôi đã lùng sục tài liệu của Google và Facebook, nhưng một nửa các liên kết mà tôi thấy là không dùng nữa các bài viết của FBConnect wiki và các tài liệu mới hữu ích, nhưng thưa thớt trên các ví dụ. Tôi không có ý tưởng gì vẫn được hỗ trợ, có gì mới và cách thực hiện điều này!
Có lý do nào khiến bạn không muốn sử dụng SDK không? SDK là một trình bao bọc tiện lợi cho tất cả những thứ "hạ thấp" mà bạn sẽ cần phải lo lắng về bản thân. Chỉ cần tát nút 'fb: login-button' trên trang web của bạn và sau đó sử dụng một dòng mã để nhận id người dùng đã đăng nhập (ở dạng js hoặc phía máy chủ). – serg
Tôi đoán tôi chỉ nhầm lẫn về việc tích hợp javascript phía máy khách với PHP phía máy chủ. Cơ chế đăng nhập gốc của trang web của tôi sử dụng phiên PHP và đã được tạo. Tôi đang bối rối về các bước cần thiết để lấy xác thực đăng nhập từ javascript và thiết lập một phiên PHP an toàn với nó. Tôi biết javascript đặt cookie - tôi có phải dựa vào đó và thay thế toàn bộ thiết lập phiên hiện tại của mình không? Não của tôi có một thời gian khó khăn xung quanh ý tưởng liên quan đến một bên thứ ba trong quá trình đăng nhập! –
Bạn thường cần JS và PHP api của facebook cho điều đó. JS api sẽ được sử dụng để hiển thị hộp thoại đăng nhập facebook, trong khi PHP có thể được sử dụng để có được id người dùng đăng nhập. Bạn không cần phải lo lắng về session, trong api PHP bạn sẽ khởi tạo nó lần đầu tiên (bằng cách cung cấp thông tin ứng dụng của bạn), và sau đó chỉ cần nói một cái gì đó như '$ api-> getLoggedUserId()' (không quen thuộc với cú pháp api php chính xác) . Sau đó, bạn có thể lưu trữ id trả về trong một phiên mình nếu bạn muốn. Một lựa chọn khác sẽ được sử dụng FB kết nối chỉ để làm cho đăng ký hiện tại của bạn dễ dàng hơn cho người dùng fb (tương tự Digg) (* xin lỗi hết dung lượng *) – serg