Đọc thư & mã email / Hướng dẫn

Đọc hộp thư trên localhost: mở đúng trang và chạy server

Đọc thư & mã email · 1249 từ · 4 hình minh họa

Một hộp thư chỉ đọc được khi đúng dữ liệu kết nối, đúng quyền và đúng phương thức. Bài này giải thích cách thao tác trên công cụ hiện tại, đọc thông báo và đối chiếu kết quả. Bạn sẽ biết khi nào nên thử lại và khi nào cần kiểm tra nguồn cấp quyền, thay vì hiểu mọi lỗi là do mật khẩu hoặc tự thay các giá trị trong token.

File HTML không đủ cho kết nối

Trang công cụ mở bằng đường dẫn file có thể dùng một số thao tác cục bộ, nhưng bộ đọc thư cần dịch vụ chạy trên máy. Mở địa chỉ localhost do cửa sổ server thông báo. Không gửi token sang website khác chỉ vì trang file chưa đọc được; trước hết kiểm tra đúng địa chỉ và dịch vụ.

Xem danh sách thư trong hộp thư đến.
Xem danh sách thư trong hộp thư đến. Ảnh minh họa AI theo phong cách ảnh chụp; không phải ảnh giao diện thực tế.

Cổng có thể thay đổi

Trình khởi động tìm cổng trống nếu cổng mặc định đang bận. Vì vậy, địa chỉ cũ có thể thuộc phiên server trước. Dùng trang tự mở hoặc địa chỉ mới được thông báo. Khi mã server thay đổi, khởi động lại dịch vụ; làm mới trình duyệt chỉ tải lại giao diện, không thay mã Python đang chạy.

Xóa dữ liệu và kết thúc phiên đọc thư

Nút Xóa thông tin và thư hủy yêu cầu giao diện nếu còn chờ, làm trống đầu vào và các thẻ kết quả. Nó không thu hồi quyền ứng dụng trên Microsoft và không xóa thư trong hộp thư. Bộ đọc được thiết kế để đọc, không đánh dấu thay đổi nội dung hộp thư qua thao tác xem. Muốn thu hồi quyền, dùng phần quản lý tài khoản tương ứng; muốn dừng dịch vụ cục bộ, đóng hoặc dừng server. Đây là các thao tác có phạm vi khác nhau. Sau khi hoàn tất, kiểm tra các bản sao đã chuyển ra ngoài trang để không nhầm xóa biểu mẫu với xóa toàn bộ dữ liệu.

Kiểm tra quyền kết nối của ứng dụng đọc thư.
Kiểm tra quyền kết nối của ứng dụng đọc thư. Ảnh minh họa AI theo phong cách ảnh chụp; không phải ảnh giao diện thực tế.

Chuẩn bị đúng thông tin kết nối hộp thư

Bộ đọc nhận một tài khoản mỗi lần theo dạng Email|Pass|RefreshToken|ClientID. Mật khẩu được chấp nhận trong định dạng nguồn nhưng không được dùng để đăng nhập trực tiếp. Dịch vụ cục bộ xin access token từ Microsoft bằng refresh token và Client ID. Bạn cần quyền truy cập tài khoản cùng phạm vi ứng dụng đã được cấp. Token trông dài hoặc có đúng số trường chưa chứng minh xác thực sẽ thành công. Khi sao chép từ nguồn, giữ nguyên dữ liệu và không thay Client ID bằng định danh của ứng dụng khác chỉ vì thấy nó trong một ví dụ hướng dẫn.

Mở trang qua dịch vụ chạy trên máy

Đọc thư cần bộ xử lý phía máy, nên chạy mo-doc-mail.cmd và dùng địa chỉ localhost do cửa sổ server thông báo. Trang mở bằng đường dẫn file có thể hiển thị giao diện nhưng không đủ để gọi bộ đọc thư. Cổng có thể thay đổi nếu phiên trước đang sử dụng cổng mặc định. Dùng trang tự mở hoặc kiểm tra địa chỉ của phiên mới thay vì truy cập một đường dẫn cũ. Khi mã server được cập nhật, cần khởi động lại dịch vụ; làm mới trình duyệt chỉ tải lại phần giao diện và không thay mã Python của tiến trình đang chạy.

Chọn phương thức theo quyền đang có

Microsoft Graph API và OAuth2 qua IMAP là hai cách kết nối khác nhau. Graph lấy thư bằng yêu cầu HTTPS, còn IMAP dùng kết nối hộp thư để tìm và đọc nội dung. Quyền của token phải phù hợp với phương thức; có quyền ở cách này không đảm bảo có quyền ở cách kia. Giao diện cho phép chọn và hiển thị phương thức đang dùng để bạn theo dõi. Nếu không biết phạm vi token, kiểm tra nguồn cấp hoặc quy trình đồng ý của ứng dụng. Không thể suy ra quyền chỉ từ email, mật khẩu hay hình thức của chuỗi refresh token.

Đọc nội dung để xác định đúng mã xác nhận.
Đọc nội dung để xác định đúng mã xác nhận. Ảnh minh họa AI theo phong cách ảnh chụp; không phải ảnh giao diện thực tế.

Theo dõi tiến trình và phân biệt thông báo

Sau khi bấm đọc, nút bị vô hiệu trong lúc chờ và dòng trạng thái cho biết đang kết nối theo phương thức nào. Thành công sẽ hiện số thư trả về cùng các thẻ nội dung. Nếu lỗi, đọc mô tả trước khi đổi dữ liệu. Từ chối xác thực thường liên quan token hoặc quyền; không kết nối được thường liên quan mạng, proxy, tường lửa hoặc thời gian chờ. Đây là các nhóm nguyên nhân khác nhau. Đừng sửa mật khẩu trong nguồn để xử lý lỗi mạng, vì mật khẩu không tham gia luồng OAuth của bộ đọc hiện tại.

Dùng nút chuyển phương thức khi cần

Khi yêu cầu thất bại, giao diện đưa ra nút chuyển sang phương thức còn lại và đọc lại. Nút này giúp thử một lựa chọn có thể phù hợp hơn, không hứa sửa được mọi lỗi. Nếu Graph hoạt động còn IMAP thất bại, có thể dùng Graph để đọc thư trong phiên; việc đó không tự sửa quyền IMAP. Nếu cả hai thất bại, kiểm tra token, Client ID và mạng thay vì thử liên tục. Một yêu cầu bị hủy hoặc quá thời gian cũng cần xem xét kết nối trước khi kết luận rằng hộp thư không tồn tại hoặc không có thư.

Đọc đúng phạm vi của danh sách kết quả

Phiên bản hiện tại lấy tối đa mười lăm thư mới nhất trong hộp thư đến. Nó không bao gồm mọi thư mục và không tải toàn bộ lịch sử. Nếu tài khoản chỉ có ba thư trong phạm vi này, ba thẻ có thể là kết quả đúng. Nếu thư cần tìm nằm trong thư rác hoặc thư mục riêng, hãy xem bằng giao diện hộp thư chính thức. Công cụ không tự gửi yêu cầu tạo mã cho dịch vụ khác. Bạn cần thực hiện yêu cầu xác minh ở dịch vụ đó, chờ thư mới tới rồi đọc lại để kiểm tra thời gian và nội dung.

Đối chiếu mã với nội dung của thư

Bộ tìm số hiện tại có thể đưa ra các dãy bốn đến tám chữ số hoặc dạng ba số nối ba số làm gợi ý sao chép. Không phải mọi dãy đều là mã xác minh: năm, số tham chiếu hoặc phần địa chỉ mạng cũng có thể bị nhận diện. Mở Xem nội dung thư để đọc câu yêu cầu dùng mã và đối chiếu tiêu đề. Chọn đúng thư gắn với phiên xác minh hiện tại; mã trong thư cũ có thể không còn được chấp nhận. Nút sao chép chỉ đưa số vào clipboard, không xác nhận hiệu lực và không tự đăng nhập.

Kiểm tra kết nối khi bộ đọc thư báo lỗi.
Kiểm tra kết nối khi bộ đọc thư báo lỗi. Ảnh minh họa AI theo phong cách ảnh chụp; không phải ảnh giao diện thực tế.

Câu hỏi thường gặp

Có cần kiểm tra lại dữ liệu sau mỗi lần thay đổi không?

Có. Khi thay đổi đầu vào, hãy kiểm tra trạng thái và kết quả mới trước khi dùng. Đừng dựa vào kết quả của phiên trước để xác nhận cho nguồn vừa chỉnh. Với thao tác sao chép, đối chiếu thông báo thành công cùng nội dung bạn định chuyển. Nếu xảy ra lỗi, đọc mô tả ngay tại công cụ và xử lý đúng phần bị báo. Dữ liệu ví dụ trong bài chỉ để thực hành, không dùng để đăng nhập hoặc thử kết nối một hộp thư thật.

Làm sao biết đã hoàn tất đúng mục tiêu của bài?

Hãy xác nhận bạn đã hiểu vấn đề được nêu ở hai phần đầu, thực hiện bước phù hợp trong công cụ và kiểm tra giới hạn của kết quả. Một mã đã xuất hiện, một thẻ đã tách hoặc một danh sách thư đã tải là kết quả của chức năng tương ứng, không chứng minh tất cả dữ liệu nguồn đúng. Nếu mục đích tiếp theo là xác minh ở một dịch vụ khác, cần thực hiện bước đó riêng. Sau cùng, xóa dữ liệu trong trang khi không còn dùng và kiểm tra nơi đã sao chép.

Thông tin tính năng được đối chiếu với mã của công cụ hiện tại. Microsoft: quyền và luồng truy cập thay mặt người dùng.

Bài liên quan trong cùng chủ đề