V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
爱意满满的作品展示区。
aimerforreimu

写了一个基于各类 API 的图床

  •  1
     
  •   aimerforreimu · Nov 5, 2018 · 4913 views
    This topic created in 2733 days ago, the information mentioned may be changed or developed.

    动机

    一直想自己调一下各种图床的 api ,本来想用世界上最好的语言,最近在学 Go,索性直接用 Go 写了一个 API 图床,另外加上个人超级喜欢 SMMS 图床的 UI,想按照那个样子写一个,无奈 CSS 渣渣,根本写不出辣么好看的样式,前几天有个 V 友发布了一个图床 (看这里)[https://study.congcong.us/t/499834#reply27],这个图床的样式是模仿 SMMS 的样式,超级喜欢,于是就是用了大佬写的前端,自己造了一个基于 各类 API 的图床

    首先前排不要脸求 Star ❤ (/ω\)

    演示地址 AuXpI 图床

    GitHub 地址 GitHub

    功能

    • 支持 web 上传图片
    • 支持 API 上传图片
    • 支持 搜狗图床,新浪图床,SMMS 图床 的图片上传
    • API 可以设置 token 可以私用,也可以选择关闭 API,只保留 web 上传
    • 可以设置是否开启新浪图床上传(因为新浪图床需要登录自己的账号)
    • 可以设置允许上传的图片最大大小 和 一次性上传的最多张数
    • .....

    具体配置请看 AuXpI

    截图

    目前包括了三个 API,搜狗,渣浪,和 SMMS , 程序自带了 API 接口,和 web 上传页面,并且两个是用了不同的路由

    搜狗 :

    Snipaste_2018-11-05_21-09-45.png

    SMMS :

    Snipaste_2018-11-05_21-10-02.png

    渣浪: Snipaste_2018-11-05_21-17-01.png

    各类配置

    本来没有想那么多,想写一个超级轻量级的图床,所以一切配置靠 json,并没有连接数据库,所以对环境的要求也超级少

    只需要把打包好的程序扔到服务器上面,运行,然后配置 json 就可以啦,json 各种配置说明如下

    
    {
      "site_name": "BusterApi 图床",         #站点名称
      "site_footer": "你好世界",              #footer 输出的内容
      "site_url": "/",                       # 站点 url
      "site_upload_max_number": 10,          #一次性最多可以上传多少张图片
      "site_up_load_max_size": 5,			 #最大允许上传的图片大小,单位 MB
      "open_api_up_load": true,				 # 是否开启 API 上传 
      "api_token": "",						 # API token 空为不设置
      "api_default": "SouGou", 				 # API 默认上传上去的图床
      "cache_config": true, 				 #是否对配置进行缓存(建议开启)
      "site_upload_way": {
        "local_store": false, 				 #是否开启本地储存(此功能等待开发)
        "open_sina_pic_store": false, 		 #是否启用新浪图床
        "sina_account": {
          "user_name": "", 					 #若开启微博图床,请填写您的微博登录用户名
          "pass_word": "", 					 #填写您的 微博登录密码
          "reset_sina_cookie_time": 3600,  	 # 微博 cookie 缓存时间 s
          "defult_pic_size": "large" 		 # 默认返回的微博图片的大小
        }
      }
    }
    
    

    说明

    本项目是使用 beego 写的,感觉写完这一次学了不少的知识,代码基本上是边看编写的,Go 写起来也挺舒服的(个人看法),所以,这个项目会有大量的神奇的 BUG,和 各种蜜汁代码,大佬嘴下留情

    如果有问题 欢迎在 Issue 中提出讨论

    最后在发一次项目地址,求支持 ❤ (/ω\)

    GitHub 地址 GitHub

    15 replies    2018-11-17 21:17:36 +08:00
    skyqqcc
        1
    skyqqcc  
       Nov 5, 2018 via Android
    支持.....
    natforum
        2
    natforum  
       Nov 6, 2018
    mark
    aimerforreimu
        3
    aimerforreimu  
    OP
       Nov 6, 2018 via Android
    @skyqqcc 感谢
    jisibencom
        4
    jisibencom  
       Nov 6, 2018 via Android
    不错的样子,免登陆发布最好了
    dyxang
        5
    dyxang  
       Nov 6, 2018 via iPhone
    纯静态?
    dyxang
        6
    dyxang  
       Nov 6, 2018 via iPhone
    @dyxang 我想多了……
    aimerforreimu
        7
    aimerforreimu  
    OP
       Nov 6, 2018 via Android
    @dyxang 纯静态 API 就不可控了_(:з」∠)_
    wanwushengzhang
        8
    wanwushengzhang  
       Nov 6, 2018
    支持
    aimerforreimu
        9
    aimerforreimu  
    OP
       Nov 6, 2018
    chenhonzhou
        10
    chenhonzhou  
       Nov 7, 2018
    mdui 好评😀
    alex1504
        11
    alex1504  
       Nov 7, 2018
    优秀弟娃!
    leizang
        12
    leizang  
       Nov 14, 2018 via Android
    为什么一会儿就不能访问了呢
    aimerforreimu
        13
    aimerforreimu  
    OP
       Nov 15, 2018 via Android
    @leizang 你要上传违反法律的图片能访问才怪 doge
    leizang
        14
    leizang  
       Nov 16, 2018
    @aimerforreimu 不是的 是 ip:2333 这个访问不成
    aimerforreimu
        15
    aimerforreimu  
    OP
       Nov 17, 2018 via Android
    检查防火墙师傅阻断了这个端口
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2556 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 88ms · UTC 12:42 · PVG 20:42 · LAX 05:42 · JFK 08:42
    ♥ Do have faith in what you're doing.