2

我有兴趣编写一个可以通过 OneNote API 访问我的 OneNote 笔记本的 Java 应用程序。我不确定如何从 Java 中访问该 API。谁能给我举个例子来说明如何从这里开始?我使用 Eclipse 作为我的开发环境。

4

3 回答 3

1

这是一个简单的过程。

这 3 个步骤将是:

1) 在 OneNote 开发者页面创建一个 OneNote 应用程序。更多信息在这里https://dev.onedrive.com/app-registration.htm。这是一次性行动。

2) 你的 java 应用程序应该提供一个认证机制和一个 tolken-refresh 机制。

有关身份验证机制部分的更多信息,请参阅此帖子:使用 Java 获取 OneNote 令牌。这篇文章是关于 OAuth 2.0 流程“授权码授予流程”的。更多信息在这里https://msdn.microsoft.com/en-us/library/hh243647.aspx#flows

3) 您的 java 应用程序调用 adhoc API Rest 方法来检索所需的信息。

检索所有笔记本的示例(使用 OkHttp 进行 Http 请求):

private final static String NOTEBOOKS_ENDPOINT = "https://www.onenote.com/api/v1.0/me/notes/notebooks";


public Notebooks readAllNoteBooks() {

    try {
        if (client == null)
            client = new OkHttpClient();
        Request request = createOneNoteRequest(a_valid_tolken, NOTEBOOKS_ENDPOINT);
        Response response = client.newCall(request).execute();
        JsonObject content = UrlHelper.parseResponse(response);
        System.out.println(content);

        return Notebooks.build(content.get("value"));
    } catch (Exception ex) {
        ex.printStackTrace();
    }
    return null;
}

public static Request createOneNoteRequest(String mAccessToken, String url) {

    Request.Builder reqBuilder = new Request.Builder();
    reqBuilder.url(url);
    reqBuilder.header("Authorization", "Bearer " + mAccessToken);

    return reqBuilder.build();

}

NoteBooks并且NoteBook是 2 个与 OneNote 对象的关键属性匹配的小类。

于 2016-08-03T22:21:20.613 回答
0

辛格拉斯,

除了以上回复,Android OneNote API 示例也可能对您有所帮助。没有可以创建的 OneNote 应用程序类(除非您想创建自己的)。您只需通过 HttpClient 调用 API。如果您不熟悉如何在 Java 中调用 REST API,这个线程可能会对您有所帮助。

- 詹姆士

于 2014-08-14T20:56:42.660 回答
0

Microsoft 提供了用于访问 One note 功能的 REST API,例如创建和访问便笺。请参阅OneNote Rest API 参考

于 2014-08-14T11:27:14.580 回答