Vẫn còn phải xem liệu Twitter có sụp đổ hay không, mặc dù một số dấu hiệu đang cho thấy. Dù chuyện gì xảy ra, tôi vẫn tiếp tục đầu tư một chút vào Mastodon. Tuần trước, tôi đã trình bày nội dung của một người giữa Twitter và Mastodon. cách đồng bộ Tuần này, tôi đã thiết lập một điều khiển Mastodon trên miền của mình để chuyển hướng đến trang hồ sơ của tôi: Tôi muốn giải thích cách tôi đạt được điều đó và những vấn đề tôi vẫn đang gặp phải. voi răng mấu 101 Mastodon khác với Twitter ở chỗ nó không tập trung: đó là một liên kết các máy chủ Mastodon, chạy độc lập và được kết nối với nhau - . Nói chính xác, Fediverse không chỉ là các nút Mastodon, nhưng chúng ta đừng đi xa đến thế. Fediverse Vấn đề đầu tiên khi một người muốn tạo tài khoản Mastodon là chọn đúng phiên bản. Lựa chọn đầu tiên của tôi là , nhưng nó đã bị đóng đối với các tài khoản mới vào thời điểm đó. Tôi để mắt đến không vì lý do gì ngoài việc nó nằm trong danh sách đề xuất và là tiếng Pháp. mastodon.social mastodon.top Việc lựa chọn máy chủ không quá quan trọng vì bạn luôn có thể sang phiên bản khác và giữ người theo dõi của mình. Lưu ý rằng bạn sẽ để lại (và mất) nội dung của mình trên máy chủ ban đầu. Trong mọi trường hợp, hồ sơ của bạn được đặt tên bởi máy chủ; do đó, tay cầm của bạn thay đổi. chuyển tài khoản của mình Hiện tại, tôi là . Nhưng, có lẽ tôi sẽ tham gia cùng bạn bè của mình tại hoặc thành lập của riêng mình trong tương lai? Trong cả hai trường hợp, tôi sẽ cần thay đổi hậu tố của tay cầm của mình. @frankel@mastodon.top foojay.social frankel.social Tuy nhiên, tôi xuất bản tên miền của mình trên nhiều trang web và không muốn quên bất kỳ cập nhật nào khi di chuyển. Do đó, tôi yêu cầu handle . phải là immutable Tôi đã đề cập ở trên rằng các nút Mastodon thuộc về một mạng có tên là Fediverse. Các nút Fediverse có thể được kết nối thông qua . Các nút voi răng mấu sử dụng . Bên dưới, ActivityPub dựa vào WebFinger để tìm vị trí chính xác của một tay cầm. một số giao thức khác nhau ActivityPub WebNgón tay Mastodon cần dịch thành . Bản dịch phải diễn ra trên mọi phiên bản Mastodon, bất kể miền của nó. Quá trình này dựa trên , RFC 7033: @frankel@mastodon.top https://mastodon.top/web/@frankel đặc tả WebFinger hay còn gọi là WebFinger như được mô tả trong là một thông số kỹ thuật xác định , chỉ được cung cấp một URI trên một máy chủ cụ thể. Điều này cho phép mọi người tra cứu vị trí của tài nguyên mà không cần phải biết trước vị trí chính xác của nó; ví dụ: qua email hoặc số điện thoại. Việc tra cứu này hướng đến điểm cuối và một tham số truy vấn được chuyển cùng với việc tra cứu. URI tài nguyên được sử dụng với Mastodon là URI như được mô tả trong , với tên người dùng của một cấu hình được lưu trữ trên một miền cụ thể. RFC 7033 phương pháp phân giải các liên kết tới tài nguyên /.well-known/webfinger resource acct: RFC 7565 -- WebFinger là gì và tại sao nó được sử dụng? Theo như trên, khi tìm kiếm hồ sơ của tôi, truy vấn như sau: . Bạn có thể kiểm tra bằng cách truy cập phiên bản Mastodon mà bạn đã đăng nhập, tìm kiếm tên miền của tôi và xem lưu lượng truy cập thông qua các công cụ dành cho nhà phát triển của trình duyệt ưa thích của bạn. https://mastodon.top/.well-known/webfinger?resource=acct:frankel@mastodon.top Câu trả lời như sau: { "subject":"acct:frankel@mastodon.top", "aliases":[ "https://mastodon.top/@frankel", #1 "https://mastodon.top/users/frankel" #1 ], "links":[ { "rel":"http://webfinger.net/rel/profile-page", #2 "type":"text/html", "href":"https://mastodon.top/@frankel" }, { "rel":"self", "type":"application/activity+json", "href":"https://mastodon.top/users/frankel" }, { "rel":"http://ostatus.org/schema/1.0/subscribe", "template":"https://mastodon.top/authorize_interaction?uri={uri}" } ] } URL tới hồ sơ cho Mastodon rel Tay cầm Mastodon bất biến Nó sẽ hoạt động nếu tôi trả lại cùng một phản hồi cho cùng một truy vấn trên một miền tùy chỉnh. Đó là điều tôi đã làm: . Vì đó là trang tĩnh và tôi là tài khoản duy nhất nên chúng tôi không cần tham số truy vấn: . https://blog.frankel.ch/.well-known/webfinger?resource=acct:me@frankel.ch https://blog.frankel.ch/.well-known/webfinger Với điều này, tôi có thể tìm kiếm trên với (hoặc bất kỳ tên miền nào ) và nó trả về kết quả như mong đợi: https://mastodon.top @me@frankel.ch @frankel.ch Tôi đã kiểm tra các trường hợp khác, , nhưng nó không hoạt động. Lý do rất đơn giản. Khi tìm kiếm trên phiên bản bạn đã đăng nhập, XHR là ; khi không, đó là . ví dụ: https://mastodon.social/ https://mastodon.top/api/v2/search?q=@me@frankel.ch&resolve=true&limit=5 https://mastodon.top/api/v2/search?q=@me@frankel.ch&resolve=false&limit=5 Kết luận: bạn chỉ có thể xử lý truy vấn trên cùng một phiên bản khi bạn chưa được xác thực. Tài liệu xác nhận rằng nếu pháp là , thì truy vấn sẽ không cố sử dụng WebFinger: resolve false resolve Boolean. Thử tra cứu WebFinger? Mặc định là sai. -- Thực hiện tìm kiếm Phần kết luận Lý thuyết đằng sau Mastodon và WebFinger rất hấp dẫn. Tôi đã quản lý để định cấu hình xử lý voi răng mấu bất biến của mình . Đó là cách tôi có thể giao tiếp với những người theo dõi tiềm năng: nếu tôi chuyển sang một máy chủ khác, tôi sẽ cập nhật tọa độ mới của mình trên . @me@frankel.ch webfinger Thủ thuật hiệu quả vì tôi là người dùng Mastodon duy nhất trên miền của mình. Nếu bạn có nhiều, bạn sẽ cần vượt ra ngoài trang tĩnh để trả về một ID khác tùy thuộc vào tham số phần còn lại giữ nguyên. acct: Để đi xa hơn: Các bước hướng tới vinh quang của REST Ngôn ngữ ứng dụng siêu văn bản JSON RFC 8288 - Liên kết web Chọn mã trạng thái HTTP — Ngừng làm khó Được xuất bản lần đầu tại vào ngày 18 tháng 12 năm 2022 A Java Geek Ảnh của trên Shashank Rana Bapt