跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 有没有能把 onedrive 当成 cos 用的代码
未分類
15 1 月 2021

有没有能把 onedrive 当成 cos 用的代码

有没有能把 onedrive 当成 cos 用的代码

資深大佬 : artms 3

最近在做个项目,想尝试下 用 web 客户端把用户 post 的视频文件直接存到 youtube 或者 onedrive.

youtube 的 api 好像不行了,现在只有 onedrive.. 但是 onedrive 怎么才能像腾讯云 cos 那样保存上去呢?

求教各路大神 给点思路~

大佬有話說 (16)

  • 資深大佬 : favourstreet

    onedrive 有一套 oauth 认证的 graph api,可以以分片的方式上传,api 和一般对象存储的分片上传有点不一样,但基本用法是一样的

  • 資深大佬 : skys215

    “像腾讯云 cos 那样” 是指怎么样?

  • 資深大佬 : mm2x

    onderive 不是有 API 的吗?可以申请啊。

  • 資深大佬 : zqcolor

    ‘onedrive 有一套 oauth 认证的 graph api’ 几年前用过,当时这个挺难用,分片部分好像我们自己实现的,不知道现在号线没有, 但是好像 app 还要注册一下,然后每次要登录一下才能用

  • 主 資深大佬 : artms

    @zqcolor 这么看起来还挺麻烦的。

  • 資深大佬 : Ranying

    不如传到后端,然后方法就多了起来

  • 資深大佬 : MaiKuraki

    这个?
    https://onedrive.gimhoy.com/

  • 主 資深大佬 : artms

    @MaiKuraki 这个是第二步。现在第一步要做的是解决上传。。。

  • 資深大佬 : Shazoo

    用 Graphic API 。

    “` python
    def get_upload_session_url(path, filename):
    url = f”https://graph.microsoft.com/v1.0/me/drive/root:/{config[‘root_path’]}/{path}/{filename}:/createUploadSession”
    payload = {
    “item” : {
    “@microsoft.graph.conflictBehavior”: “replace”,
    “name”: filename
    }
    }
    resp = r.post(url, headers=add_token_header({‘Content-Type’: ‘application/json’}), data=json.dumps(payload))
    return json.loads(resp.content)[‘uploadUrl’]

    def upload_file_body(upload_url, localfile):
    f = open(localfile, ‘rb’)
    data = f.read()
    headers = {
    ‘Content-Length’:f'{len(data)}’,
    ‘Content-Range’: f’bytes 0-{len(data)-1}/{len(data)}’
    }
    resp = r.put(upload_url, data=data, headers=headers)
    f.close()
    return json.loads(resp.content)[‘id’]
    “`

    上传的核心代码。是适合大文件的那种。

  • 資深大佬 : Shazoo

    @artms 最近刚做了个 OneDrive 当 Typora 图床的小工具。上面的是其中代码,C 程序员写 python,凑合看吧。

    Graphic API 麻烦的是认证授权部分。建议用 code 方案,最简单。

    直连方案,可能需要服务器配合(因为直连链接是几次 302 和 url 替换,其中有部分不可描述了,我是用香港服务器搞定的)

    1drv.ws 这个服务很不错,可是貌似有缓存,我这里出现几次跳转链接不更新了。所以还是自建比较好。

  • 資深大佬 : stille

    用 rclone 上传吧

  • 資深大佬 : Winter1sComing

    https://cloudreve.org

  • 資深大佬 : IDAEngine

    rclone

  • 主 資深大佬 : artms

    @Shazoo 多谢,这正是我要干的~ 有心了!

  • 主 資深大佬 : artms

    @Winter1sComing 谢谢~

  • 資深大佬 : baobao1270

    oneindex?

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具