Tôi nhận thấy rằng libcurl hỗ trợ IMAP, nhưng không tìm thấy bất kỳ điều gì trong tài liệu và ví dụ http://curl.haxx.se/libcurl/c/imap.html rất kém. Có ai biết làm thế nào để sử dụng giao thức này trong lib này, làm thế nào để tải thư? Trânlibcurl và imap
Trả lời
Lệnh sau chọn hộp thư và các vấn đề FETCH 1 BODY[TEXT]
Gmail của tôi để có được đầu tiên (cũ) thông điệp:
curl -v 'imaps://creaktive+gmail.com:[email protected]:993/Inbox'
Tôi không hoàn toàn chắc chắn nếu có một cách dễ dàng để thực hiện các nhiệm vụ khác, như liệt kê các hộp thư hoặc chọn thư mới nhất.
Có một email tốt trên mailing list mô tả cú pháp IMAP ở đây: http://curl.haxx.se/mail/lib-2013-03/0104.html
Đây là phần có liên quan: imap
--url: //mail.example.com/INBOX/ ; UID = 1 - Chọn hộp thư đến của người dùng và tìm nạp thư 1
- url imap: //mail.example.com/INBOX; UIDVALIDITY = 50 /; UID = 2 - Chọn hộp thư của người dùng , kiểm tra UIDVALIDITY của hộp thư là 50 và tìm nạp thư 2 nếu nó là
imap --url: //mail.example.com/INBOX/; UID = 3 /; PHẦN = TEXT - Chọn hộp thư của người dùng và lấy thông điệp 3 với chỉ phần nội dung tin nhắn
Ngoài việc truy xuất email, bạn cũng có thể chuyển một email đến máy chủ. Điều này đạt được thông qua lệnh IMAPS APPEND và chỉ đơn giản là sử dụng cơ chế hiện có curl của để tải dữ liệu đến một máy chủ:
--url imap: //mail.example.com/OUTBOX -T email.txt
- Các lệnh khác có thể được phát hành, chẳng hạn như: DANH SÁCH để liệt kê các thư mục con của hộp thư ; EXAMINE để xem những email nào tồn tại trong hộp thư; TẠO, RENAME và XÓA để thao tác các thư mục con, STORE để thay đổi các thuộc tính của email và các thư mục khác. Một số ví dụ như sau:
imap --url: //mail.example.com - Thực hiện một danh sách thư mục cấp cao nhất
--url imap: //mail.example.com/INBOX - thực hiện một danh sách thư mục vào hộp thư của người dùng
imap --url: //mail.example.com -X "KIỂM TRA iNBOX" - thực hiện một danh sách tin nhắn vào hộp thư của người dùng
--url imap: // mail.example.com/INBOX -X "TẠO Thư mục con" - Tạo một thư mục con trong hộp thư của người dùng
imap --url: // mail.example.com/INBOX -X "ĐỔI TÊN Sub-thư mục My-thư mục" - Đổi tên các thư mục con trong hộp thư đến của người dùng để tôi thư mục
--url imap: // mail.example.com/INBOX -X "Thư mục con DELETE" - Xóa thư mục con trong hộp thư đến của người dùng
--url imap: // mail.example.com/INBOX -X "STORE 1 + Flags \ Deleted" - Xóa nhắn 1 từ hộp thư đến của người dùng
--url imap: // mail.example.com/INBOX -X "CỬA HÀNG 1 + Flags \ Nhìn" - Marks nhắn 1 trong hộp thư đến của người dùng như đọc
Cũng như sử dụng cú pháp URL để tìm nạp thư, cũng có thể sử dụng cơ chế yêu cầu tùy chỉnh để thực hiện các thao tác FETCH tùy chỉnh. Ví dụ
--url imap: // mail.example.com/INBOX -X "'FETCH 1 BODY [TEXT]" sẽ thực hiện hoạt động tương tự như
imap --url: // mail.example.com/INBOX/;UID=1/;SECTION=TEXT
- 1. Sử dụng LibCURL C++
- 2. Đặt https với libcurl
- 3. Làm cách nào để bật hỗ trợ https trong libcurl?
- 4. Giao nhận IMAP
- 5. Đồng bộ hóa IMAP
- 6. IMAP FETCH Subject
- 7. IMAP trong Emacs Rmail?
- 8. Python, IMAP và GMail. Đánh dấu tin nhắn như SEEN
- 9. sử dụng libcurl mà không cần dll
- 10. Lỗi libCurl SSL sau ngã ba()
- 11. libcurl HTTPS POST gửi dữ liệu?
- 12. Thư viện cho IMAP IDLE
- 13. Mã trạng thái Http với libcurl?
- 14. Hủy libcurl dễ dàng xử lý
- 15. imap - nhận tệp đính kèm
- 16. IMAP x Gmail => nhãn?
- 17. porting libcurl trên android với hỗ trợ ssl
- 18. Cross Platform Thư viện IMAP C++
- 19. Thời gian chờ IMAP nhàn rỗi
- 20. Tệp đính kèm IMAP truy xuất lệnh
- 21. Thông báo giải mã PHP IMAP
- 22. Lỗi chứng chỉ bằng IMAP trong PHP
- 23. Hỗ trợ IMAP IDLE trong ruby
- 24. Tải lên Amazon S3 bằng cách sử dụng cURL/libcurl
- 25. Cách phát triển máy chủ http với libcurl
- 26. đầu ra libcurl thành biến thay vì textfile
- 27. Không thể tìm thấy libcurl hoặc curl/curl.h (RuntimeError)
- 28. C++ LibCurl - Chuyển đổi CURLcode thành một CString
- 29. Phiên bản tương thích với Mac OS X libcurl dylib
- 30. Thêm chứng chỉ SSL tự ký cho libcurl
Các phần IMAP thiếu tài liệu cụ thể, vui lòng tham gia với chúng tôi trong dự án curl và giúp chúng tôi cải thiện điều này. –