Flutter Zimbra API集成插件zimbra_api的使用
Flutter Zimbra API集成插件zimbra_api的使用
本库是Zimbra SOAP API的一个简单的面向对象封装。
功能
- 支持
<code>zimbraAccount</code>
SOAP API - 支持
<code>zimbraMail</code>
SOAP API - 支持
<code>upload</code>
服务
开始使用
在你的 <code>Dart</code>
或 <code>Flutter</code>
项目中添加依赖:
dependencies:
...
zimbra_api:
使用方法
认证
通过账户名认证
final api = MailApi('mail.domain.com');
final response = await api.authByAccountName('name@domain.com', 'password');
if (response != null) {
final authToken = response.authToken;
}
通过 auth token
认证
final api = MailApi('mail.domain.com');
final response = await api.authByToken('auth token');
通过预认证(preauth
)认证
final api = MailApi('mail.domain.com');
final response = await api.authByPreauth('name@domain.com', 'preauth key');
if (response != null) {
final authToken = response.authToken;
}
基本用法
- 创建一个
<code>api</code>
实例。 - 使用
<code>api.auth()</code>
方法进行认证。 - 从
<code>api</code>
对象中可以访问到 Account 和 Mail API。
示例:搜索包含附件的邮件
final api = MailApi('mail.domain.com');
final response = await api.authByAccountName('name@domain.com', 'password');
if (response != null) {
final query = 'in:inbox has:attachment';
final searchResponse = await api.search(query: query, searchTypes: 'message');
final messages = searchResponse.messageHits;
}
许可证
本项目采用 BSD 3-Clause 许可证。
完整的版权和许可信息,请参阅随源码一起分发的 LICENSE 文件。
完整示例代码
import 'package:zimbra_api/zimbra_api.dart';
void main() {
final api = MailApi('mail.domain.com');
api.authByAccountName('name@domain.com', 'password').then((response) {
if (response != null) {
final query = 'in:inbox has:attachment';
api.search(query: query, inDumpster: true, searchTypes: 'message').then((response) {
if (response != null) {
for (final message in response.messageHits) {
print(message.subject);
}
}
});
}
});
}
更多关于Flutter Zimbra API集成插件zimbra_api的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复