V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
samray
V2EX  ›  分享创造

rspotify-- Rust 实现的 Spotify API SDK

  •  
  •   samray ·
    ramsayleung · 2018-02-20 17:17:41 +08:00 · 2890 次点击
    这是一个创建于 2250 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前因为想用 Spotify 的接口写点东西, Spotify 的 API 的公开的,但是在 Spotify 第三方library 列表里面没有 Rust 的实现. 所以我自己实现了 Rust 版本的 Spotify API SDK, 这个也是我写的第一个 Rust crate, 也是花费了蛮多心思的. Github 地址: rspotify, 其他对 Rust 感兴趣的同学也可以看看

    第 1 条附言  ·  2018-02-20 20:56:26 +08:00
    顺便说一下,最后在发布 rspotify 的时候,我还踩到了一个 Rust 编译器的[bug]( https://github.com/rust-lang/rust/issues/48368)
    15 条回复    2018-03-01 20:13:22 +08:00
    KeepPro
        1
    KeepPro  
       2018-02-20 17:52:48 +08:00 via Android
    感谢分享😃
    muziki
        2
    muziki  
       2018-02-20 18:21:23 +08:00
    crate 上搜的话是有的
    ===
    感谢
    楼主写的过程中有什么经验分享吗,最近也想写个开源 web 服务的 API-rs,但是之前没接触过 web 的东西,进度很慢
    songz
        3
    songz  
       2018-02-20 19:21:48 +08:00
    貌似在 dietpi 里見過樓主的 rspodify
    marenight
        4
    marenight  
       2018-02-20 19:59:37 +08:00 via iPhone
    想问下楼主学了多久
    samray
        5
    samray  
    OP
       2018-02-20 20:12:57 +08:00
    @KeepPro 互相学习, 互相学习
    samray
        6
    samray  
    OP
       2018-02-20 20:15:18 +08:00
    @muziki 开源 web 服务,这个命题有点大, 不知道具体是什么呢? 经验倒没有什么, 只是还是有些感慨和体会的, 本来打算写篇博文,但是最近诸事繁忙, 可以要吃点才能写完了.
    samray
        7
    samray  
    OP
       2018-02-20 20:15:34 +08:00
    @songz 或许是巧合 ~
    samray
        8
    samray  
    OP
       2018-02-20 20:16:07 +08:00
    @marenight 不知道这位同学指的是 Rust, 还是指 rspotify ?
    marenight
        9
    marenight  
       2018-02-20 20:20:56 +08:00 via iPhone
    @samray 不好意思没说清楚,Rust
    samray
        10
    samray  
    OP
       2018-02-20 20:26:00 +08:00
    17 年 4 月份开始接触 Rust, 前后看了 2 3 次 The Rust programming book, 后来用 Rust 写了个博客,详见 https://www.v2ex.com/t/394146, 一直有关注 Rust 的消息,也有 Rust 写了一些小工具,加起来还不到一年吧
    messense
        11
    messense  
       2018-02-20 21:03:25 +08:00
    ```
    use rspotify::spotify::client::Spotify;
    use rspotify::spotify::util::get_token;
    use rspotify::spotify::oauth2::{SpotifyClientCredentials, SpotifyOAuth};
    ```

    这 import path 好长,建议 re-export 常用到 crate root namespace,比如变成只要:

    ```
    use rspotify::Spotify;
    use rspotify::get_token;
    use rspotify::{SpotifyClientCredentials, SpotifyOAuth};
    ```
    samray
        12
    samray  
    OP
       2018-02-20 21:39:38 +08:00
    @messense 谢谢你的建议,我倒是没有考虑到这个问题.
    marenight
        13
    marenight  
       2018-02-20 21:54:48 +08:00 via iPhone
    @samray 很厉害啊,the book 第一版没学下来,最近又捡起来,发现第二版教程真的好多了。
    samray
        14
    samray  
    OP
       2018-02-20 22:01:49 +08:00
    @marenight Rust 的社区和文档还是很赞的,社区以 Reddit 和 IRC 为主,我自己逛得比较多的是 Reddit. 文档以 The Book 为首,辅以 The Rust cookbook, Rust By example 和标准库,就可以学到很多东西了.
    samray
        15
    samray  
    OP
       2018-03-01 20:13:22 +08:00   ❤️ 1
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1265 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 17:45 · PVG 01:45 · LAX 10:45 · JFK 13:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.