开始
22年5月的一天,在一次给Maybe加入背景图片的过程中,我为了省事就去找了很多的图片壁纸API,最终因为他们的图片清晰度和美观度实在难以接受而放弃。
从那个时候开始,我就有了一种想法,自己做一个API,从开发者角度真正意义上的解决图片壁纸问题,提供更多自定义的优质选择。
简介
除了提供核心服务之外,我还制作了这个主页,他的目的是预览所有的图片,这样你就知道这个站点的图片是我精心挑选的,这里还可开放了下载,这样就能避免看到好看的图片没法抱走的问题
RandomPhoto一开始是这个样子,很简陋,难看,因为这是我高一的时候写的,那个时候才刚刚把黑马程序员pink老师的课程看了个大概然后直接半吊子跑了,后来摸爬滚打学了很多的新东西,然后把他改成了这样
发展
一开始我维护这个站点使用的是ftp服务器传图片上去服务器读取图片全部路径然后把图片的地址用多线程存入某一个变量,前端在访问的时候就去变量里面读取。但是每次上传的时候用ftp服务器都要连接好久
然后我就做了一个上传系统,用户和我都可以直接上传图片,这样就可以达到开放共享的好事了在接下来的开发中,我为了让我的站点变得更加易于调用和开发自学了数据库并创建了搜索系统
得易于数据库的建立,RandomPhoto拥有了逆天般的提升:多种多样的回调方式拔地而起,开发难度指数级降低。。
而在漫长的几个月的发展中,这个站点的力量已经十分强大,他的用户群高达47人(虽然每日活跃度只有10%)
下面,让我们来看看这个站点的外观变成了什么样子
从外观上,我没有找到有哪一个站点比我的站点颜值更高
从资源上,我没有找到有哪一个站点比我的站点质量更高
从技术上,这也是大家最关心的一个问题
RandomPhoto 图片资源调用方法
Warning: 不要试图盗链,你可以下载但是不准盗链,这会让我的心理受到打击,我已经做了防盗链
第一类方法 - 随机返回
1.1 直接返回原图
此类调用方法为/Random,请注意,服务器会根据浏览器的UA来判断你的设备类型,本站有三种设备类型提供支持,分为:移动端(手机,平板)和桌面端(除了手机和平板)因此你可以在只调用一个接口的情况下保证在大部分场景都能得到适用与此屏幕的图片
1.2 直接返回缩略图
此类调用方法为/RandomNotCount,这个名字本来是内部接口,后来由于一些情况就把他放在了外面,他会返回一张缩略图给你,并且也会根据浏览器的UA来判断设备的类型并提供不同的板式
1.3 有限制的返回原图
此类调用方法为/Random?range=你希望看到的图片,如果你只想看到猫娘而不想看到樱花树,你可以使用这种方法来限制返回的图片,同样,你想看到风景而不想看到动物,你也可以通过这种方式来屏蔽掉这些图片。Warning : RandomNotCount不提供此类功能,因为他已经不再维护
第二类返回方法 - 指定返回
2.1 指定返回原始图片
此类调用方法为/Select/你希望的图片名字,如果你在浏览本站的图片库时看到一张自己喜欢的并且想把他放到自己的网站上,而下载下来又感觉有点占用空间,你可以点击进入Photoinfo,通过点击图片获取图片的名字,就可以使用这个接口获取图片,不同于前面的随机返回方式,通过这个接口所返回的图片将会是固定的,而没有图片的话会返回一段json,json会提示图片不存在,这样可以起到一些警示作用(未来会换成一张图片)
2.2 指定返回缩略图片
此类调用方法为/SelectNotCount/你希望的图片名字,这一类方法和前面提到的1.2类似,不过区别在于前面的随机返回,这个接口返回的图片也是固定的
第三类返回方法 - 定制接口
3.1 定制接口
本站由我本人开发,想怎么搞就怎么搞,如果你有需求,也能一直保持这份热爱,我免费给你定制专属接口,不过事成之后必须互相引荐
这就是RandomPhoto,它由一个职高生倾力打造而成,虽然起点不高,但每日更新,我相信,总有一天,他能成为全网最强的二次元随机图片提供系统,而要完成这个想法,需要大家一起协助
加入我们,让我们用心血浇灌这株花朵,让涓涓细流的代码变成广阔无垠的大海。我们应该拿起铲子,把梦想挖出来,我们的梦想不应该深埋在地底,而是应该飞向蓝天之上!不为什么,只因为想去就去了,那不就是最棒的人生吗?