Skip to content
echisan edited this page Apr 20, 2019 · 5 revisions

关于wbp4j

之所以把这段内容放在这里主要是为了避免在首页的README.md里面讲一些废话了嘿嘿。

诞生

关于wbp4j这个项目的诞生,是因为在写Darker在线弹幕网的时候,需要用到上传图片的功能,因为考虑到文件迁移、带宽的问题等等然后想到了微博图床这个东西,便开始着手研究这个东西。然后发现这个东西可以单独做成一个组件通过maven方式引入依赖,而且还因为是发现jitpack这个第三方maven仓库,最终决定写成一个单独的项目而不是直接在springboot项目中写。
差点忘了说,轮子当然不重复造肯定是好的,只是当时似乎怎么也搜不出来,只是搜到python相关的模拟登陆操作以及上传图片接口等等,而且感觉自己写一个库让别人直接从maven引入依赖会很有成就感吧哈哈,然后就这么开始了。

着手研究这个东西之后,经过一段磕磕绊绊也终于算是写出来了,而且提供了一个jitpack的依赖代码供复制。完全的面向过程风格哈哈哈,不过当时写出来的时候已经很开心的

如果有兴趣的话可以去康康当时的版本 wbp4j-0.0.1

再说一个当时的小趣事吧哈哈,当时写出来之后让同学去试试,从引入依赖到配置初始化组件到真正从前端调用接口上传图片,在这整个过程中都胆颤心惊哈哈,好怕一下子就系统内部错误了。然后部署到服务器之后,在上传图片的时候更加紧张了,结果500了哈哈,结果无法用了,改成imgur

过程

其一

因为不能用了我没有在用,当时也就只有我自己用过这个(我知道的),也是几个同学支持下我给我点的star。所以我就没有再管这个项目的,但是也没有把仓库删除了就是了,就一直放在这里。

其二

因为看了一点设计模式就蠢蠢欲动,想要写点代码,然后就想起这个东西了,于是就着手开始进行重构这个项目,引入了几个接口啥的,将类拆分一下啊怎么样的,结果写到最后还是面向过程了,登陆、上传基本糅杂在一起了,但怎么说也比刚开始那个要好上那么一点点吧哈哈

到了这里我就开始尝试把jar传到maven官方仓库了,但是这也是自己想试试怎么传,磕磕绊绊也是成功传了,唯一的遗憾就是把wbp4j打成wpb4j了 = =

如果你也想试试把jar包传到maven官方仓库可以参考:将自己的jar包发布到maven官方仓库
这是我当时写的一个踩坑记录吧

本来我也打算到此为止了,结果我发现有人给我提了第一个issue,我真的很开心,居然有人会用我写的东西,由心底的开心。渐渐地也多了几个issue,当然也是我没有想到的,虽然也还是那个问题,服务器登陆需要验证码,我却没有办法解决(因为那会秋春招期间,没有时间心思去处理),有一种难以言喻的无力感,但是也是没有办法了。
真的很想跟那些使用了的那些朋友说声抱歉了,感谢你们了。

现在

这个项目到了这一次已经是第二次重构了,在写之前想了很多,如何写,如何面向对象考虑了很多很多,最后形成了这个版本。
因为这类型的项目如果是当作是一个库提供给外部调用的话就要得足够稳定以及足以应付变化,这也就回到设计模式中的开闭原则了。写完这个之后我给我同学看,他展开目录树一看 “哇!这么简单的功能你居然写了这么多个类!” 哈哈哈哈

现在的经过重构看起来还挺有模有样的2333 后面再详细下面的内容。
image image