OneDrive API提供了对存储在OneDrive上文件的访问能力,大多数API都遵循REST模式,少部分的API可以通过简单的函数来调用

在使用OneDrive API之前要先了解两个简单的概念

REST( Representational State Transfer):表征性状态传输,是一种概念,或者说一种设计风格

Oauth(开放授权):是一开放标准,允许用户提供一个令牌而不是用户名和密码来访问他们存放在特定服务者(如OneDrive,百度云盘等)上的数据,每一个令牌授权一个特定的网站在特定的时间段访问特定的资源。OAuth允许用户授权第三方(比如你开发的APP)访问他们存储在另外的服务提供者上的信息。

使用OneDrive的步骤

一、验证你的应用程序

OneDrive使用OAuth2.0验证,通过HTTP头:Authorization: bearer {token}提供一个访问令牌,你会得到一个存储你的应用程序和用户的一组特定权限的令牌

二、调用API

当应用程序获得验证后,你就可以调用OneDrive API来进行一些操作

OneDrive URI Root:https://api.onedrive.com/v1.0

在调用API之前,你需要了解一些关于OneDrive资源模型(Resource Model)的概念,OneDrive中有两种资源类型:

Drive:顶级对象

Item:文件、文件夹等

想必你已看出这种资源模型和我们计算机上的类似,Drive代表某个驱动器,而Item表示驱动器内的文件或文件夹,一个用户至少有一个Drive——默认的Drive

Root Resource

路径

描述

/drive

用户默认的驱动器

/drives

向经过授权验证的用户提供的驱动器列表

/drive/{drive-id}

通过id访问特定的驱动器

/drive/{drive-id}/root/children

特定驱动器中根目录下的item列表

/drive/items/{item-id}

通过id访问特定的item

/drive/root:/path/to/file

通过path访问根目录下的item

/drive/items/{item-id}:/path/to/file

通过相对于 特定id的item 的路径来访问文件

/drive/root:/path/to/file:/children

相对于根目录的path下的item列表

/drive/items/{item-id}:/path/to/file:/children

相对于 特定id的item 的路径下的item列表

注意上面有两种用法,一种用id,另一种是用path,更多路径用法请参照OneDrive API文档:https://dev.onedrive.com/README.htm

以上就是一些基本概念和使用OneDrive API的两个基本步骤,后面将会详细的说明这两个步骤的具体操作

说明:本文及后续更新的文章是在对OneDrive官方文档的学习而来,内容可能相对较浅,写的目的也只是为了大家相互交流,如有什么错误还望指正

OneDrive开发入门的更多相关文章

  1. openresty 前端开发入门五之Mysql篇

    openresty 前端开发入门五之Mysql篇 这章主要演示怎么通过lua连接mysql,并根据用户输入的name从mysql获取数据,并返回给用户 操作mysql主要用到了lua-resty-my ...

  2. java WEB开发入门

    WEB开发入门 1 进入web JAVASE:标准- standard   JAVA桌面程序 GUI    SOCKET JAVAEE:企业-浏览器控制  web 2 软件结构 C/S :client ...

  3. [译]:Xamarin.Android开发入门——Hello,Android Multiscreen深入理解

    原文链接:Hello, Android Multiscreen_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android Multiscreen深入理解. 本 ...

  4. [译]:Xamarin.Android开发入门——Hello,Android深入理解

    返回索引目录 原文链接:Hello, Android_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android深入理解 本部分介绍利用Xamarin开发And ...

  5. [译]:Xamarin.Android开发入门——Hello,Android快速上手

    返回索引目录 原文链接:Hello, Android_Quickstart. 译文链接:Xamarin.Android开发入门--Hello,Android快速上手 本部分介绍利用Xamarin开发A ...

  6. VR原理讲解及开发入门

    本文是作者obuil根据多年心得专门为想要入门的VR开发者所写,由52VR网站提供支持.   1. VR沉浸感和交互作用产生的原理:   在之前,我们观看一个虚拟的创造内容是通过平面显示器的,52VR ...

  7. Eclipse_luna_J2EE_For_JS+tomcat8.0环境搭建、配置、开发入门

    一.所有需要的软件.插件等下载地址 J2SE的官方下载路径:http://www.oracle.com/technetwork/java/javase/downloads/index.html Ecl ...

  8. OWIN的理解和实践(三) –Middleware开发入门

    上篇我们谈了Host和Server的建立,但Host和Server无法产出任何有实际意义的内容,真正的内容来自于加载于Server的Middleware,本篇我们就着重介绍下Middleware的开发 ...

  9. [Cordova] Plugin开发入门

    [Cordova] Plugin开发入门 Overview Cordova的设计概念,是在APP上透过Web控件来呈现Web页面,让Web开发人员可以操作熟悉的语言.工具来开发APP.使用Web页面来 ...

随机推荐

  1. 【转】MYSQL数据库设计规范与原则

    转载出:http://www.cnblogs.com/lovekingly/p/5044278.htmlMYSQL数据库设计规范 1.数据库命名规范 采用26个英文字母(区分大小写)和0-9的自然数( ...

  2. presto架构和原理

    Presto 是 Facebook 推出的一个基于Java开发的大数据分布式 SQL 查询引擎,可对从数 G 到数 P 的大数据进行交互式的查询,查询的速度达到商业数据仓库的级别,据称该引擎的性能是 ...

  3. Java并发编程原理与实战十三:JDK提供的原子类原理与使用

    原子更新基本类型 原子更新数组 原子更新抽象类型 原子更新字段 原子更新基本类型:   package com.roocon.thread.t8; import java.util.concurren ...

  4. Git为某个域名设置代理

    打开Git 配置文件 vi ~/.gitconfig 添加如下配置: [http "https://github.com/"] proxy = http://127.0.0.1:1 ...

  5. 同一个IIS绑定多个Htts 站点问题

    默认情况一个服务器的IIS只能绑定一个HTTPS也就是443端口 要实现多个站点对应HTTPS只能更改IIS配置 地址:C:Windowssystem32inetsrvconfigapplicatio ...

  6. 【leetcode 简单】 第六十三题 使用队列实现栈

    使用队列实现栈的下列操作: push(x) -- 元素 x 入栈 pop() -- 移除栈顶元素 top() -- 获取栈顶元素 empty() -- 返回栈是否为空 注意: 你只能使用队列的基本操作 ...

  7. 【黑客免杀攻防】读书笔记17 - Rootkit基础

    1.构建Rootkit基础环境 1.1.构建开发环境 VS2012+WDK8 1.2.构建基于VS2012的调试环境 将目标机.调试机配置在同一个工作组内 sVS2012配置->DRIVER-& ...

  8. aarch64_l1

    L-function-1.23-18.fc26.aarch64.rpm 2017-02-14 08:01 139K fedora Mirroring Project L-function-devel- ...

  9. ArcMap2SLD添加中文支持

    首先,你可以从作者提供的链接下载ArcMap2SLD.zip(支持ArcMap10.2) 1.打开LUT_sld_mapping_file.xml文件(上传文件中已经修改)修改文件<LUT> ...

  10. python网络编程--线程join和Daemon(守护进程)

    一:什么情况下使用join join([timeout])调用join函数会使得主调线程阻塞,直到被调用线程运行结束或超时. 参数timeout是一个数值类型,用来表示超时时间,如果未提供该参数,那么 ...