惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
B
Blog RSS Feed
Microsoft Security Blog
Microsoft Security Blog
Y
Y Combinator Blog
N
Netflix TechBlog - Medium
M
MIT News - Artificial intelligence
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
C
Check Point Blog
The GitHub Blog
The GitHub Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
P
Proofpoint News Feed
Martin Fowler
Martin Fowler
大猫的无限游戏
大猫的无限游戏
GbyAI
GbyAI
博客园_首页
A
About on SuperTechFans
Blog — PlanetScale
Blog — PlanetScale
人人都是产品经理
人人都是产品经理
T
Tailwind CSS Blog
aimingoo的专栏
aimingoo的专栏
T
The Blog of Author Tim Ferriss
The Cloudflare Blog

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
Workflow分享 | 在 iOS 设备上使用微博图床 - 少数派
2016-12-09 · via 少数派

2017 年 7 月 29 日更新:微博调整了自身 API,本文中使用的 API 已不能使用,Workflow 随之也不能正常工作了。现在没想到好的解决办法,请知悉。

由于 Markdown 的要求,图床是必不可少的。实际上我很多文章都是在移动设备上写的,文章配图也有很多都是在移动设备上获得的,而移动设备上没有比较好的图床应用,而全部转移到桌面端上传到图床的话,也很麻烦。一般到这个时候我都会首选用 Workflow 尝试解决。

先放一个直接能用的Workflow[1] 链接:上传图片到新浪微博图床 公有

自 Workflow 更新了 Get Contents of URL 这个动作之后,利用 Workflow 上传图片到图传并获得外链成为了可能。少数派上 @JailbreakHum 写的 Workflow 系列文章中已经举了两个例子,分别是基于 Imgur 和 sm.ms 的。好处是这两个图床都比较简单,无需太多步骤,坏处是这两个网站在大陆都访问困难,用作图床的话速度偏慢。
要想获得良好的速度和稳定性,应该尽量选择国内的平台。目前用得比较多的一个是七牛云,需要注册,并且限制流量和空间,我不太熟悉;第二个其实就是微博。每条微博的配图都是允许外链的,而且新浪可以保证稳定性和访问速度。有人可能接触过之前一个名叫「围脖是个好图床」的项目,原理也正是如此。
所以方向明确了,就是用 Workflow 实现以下内容:在相册中选取图片,发表一条微博,当然这条微博不想别人看见,然后获取到这张图片的链接。整个 Workflow 的难点在如何调用微博的 API 发微博上。

前期准备操作

能用账户发微博,实际上是取得了这个账户的某种权限,对新浪来说,这肯定需要用户进行授权。查新浪官方的 API 文档,事实也确实这样。这项 API 是这样设定的:

URL:POST  https://upload.api.weibo.com/2/statuses/upload.json
支持格式:JSON
是否需要登陆:是

所请求的参数中我们需要关注的有以下几个:

Image

这几项参数中,需要我们去提前获取的只有 access_token,也就是用户的授权回执。【评论区有用 Workflow 获取 access_token 的方法。】用户的授权回执新浪只授权给新浪的开发者,所以为了获取到这个字段,没有更好的办法,只好去当一把新浪开发者。

按照以下步骤,就能创建一个「应用」,并获取到所需数据。

注册成为新浪开发者并创建一个应用

  1. 登录新浪开放平台:新浪开放平台,按照网站提示注册成为开发者。
  2. 创建一个应用,步骤如下图。注意授权回调页这里要填写一个能打开的网址,是哪个网址无所谓。


获取 access_token

  1. 首先下载新浪官方 SDK,这里下载 Java 的就好。
    下载地址:Java_SDK

  2. 然后将 SDK 解压导入 Eclipse 中。首先在边栏找到 src,在其下的 config.properties 文件中填写 App Key 和 App Secret 以及你之前自己设置的授权回调页网址。

  3. 在边栏的 examples 下的 weibo4j.examples.oauth2 里,打开 OAuth4Code.java,在顶栏选择 Run > Run as Java Application

  4. 这时候会自动打开浏览器,跳转到之前在授权回调页里设置的网址,仔细观察网址栏,最后有一段 code=XXXXXX的字样,复制这段字符。回到Eclipse 里,在下方的控制台里输入之前复制的 code 后的文字,按回车。观察控制台里的内容如下,记下其中的 access_token=2.00xxxxxx 的字样,这就是我们要获取的字段。

注意到这里我们创建的应用是未经新浪审核的,如果你对其授权的不是创建应用使用的账户,那么这个 access_token 的有效期只有一天,而如果授权的账户和创建应用的账户一致,有效期则是五年。关于微博的前期准备工作到此结束。

接下来是制作 Workflow 的过程。关键的部分仅有一步:Get Contents of URL 。根据微博文档要求,Method 需要设置成 POST ,Request Body 选 Form 。(关于这部分的文章请看少数派上的这篇文章)。其下有几个参数,分别如图填写。

其中 status 对应的变量 name 是该图片的文件名,作为微博正文。visible 的值之所以取 2(密友圈可见)是因为我在测试使用「仅自己可见」时返回错误。所以我建议是注册一个小号专门用来做图床,保持关注数为零,这样就没人会看见你发的图片了。
URL 返回的同样是 JSON 格式的数据,其中名为 original_pic的 key 里包含了图片的 URL ,但经过了特殊处理,需要将里面的反斜杠都去掉才是真正的图片链接。至此这个 Workflow 就讲述完了。

结语

这一个流程下来,其实最难的最复杂不是 Workflow 这个部分,而是前期的准备工作。

多数人看到这里,可能已经大大地翻了一个白眼,心里想这么麻烦到底是图个啥?

其实这就是折腾,愿意折腾的人总能因为一点小小的需求不辞辛苦地做很多工作。这绝对不是所谓最「效率」的办法,最效率的办法应该是找已经有的 Workflow 用着,或者购买优质的服务。但怎么说呢,折腾这个过程的乐趣,只有愿意折腾的人才能体会到。

Workflow 我把它比作一只会下金蛋的鸡,因为我发现做出一个能实现自己需求的 Workflow 是一件好事,制作 Workflow 的途中能学习到的知识和思维甚至是更有价值的部分。

本文由 Ulysses 写成,图片标注工具是 Powerpoint

  1. 使用这个 Workflow 时的图片都发布到了微博某账户下,该账户没有关注与被关注,发布时设置的是密友可见,所以不会有人看见发在上面的图片。请大家合理使用,不要上传不健康的图片。同样请不要泄露这个 Wrorkflow 中的 access_token ,也不要将这个 access_token  用在别处。如果在意自己图片的隐私,又对微博图床有需求的话,我强烈建议按照文中的步骤自制一个。