360问答图片上传接口

最近看到一篇说图床的文章…目前最火爆的自然是微博但是它需要登录后才能传图…
在闲逛的时候发现了360的问答网站也是可以上传图片的…而且并不需要登录…于是果断打开了Chrome的开发者工具看看是怎么做的图片上传…
上传接口1

我们看到上图的红色框里就是请求的地址 绿色框是请求参数,看到是一个 表单提交,把图片文件放在了 picdata 这个字段里了,然后我们右键这个请求 复制 curl(bash)的链接。
经过测试后,发现有2个Header的值是必须的,就是蓝色框里的2条,一个是来源地址,一个是页面引用。 然而这一个表单请求 不太方便用 html 来实现 只能用 curl 或者 程序方式来做提交。
相关 curl 请求如下

curl 'http://wenda.so.com/submit/uploadimg/' -F 'picdata=@1.jpg'  -H 'Origin: http://wenda.so.com' -H 'Referer: http://wenda.so.com/' | python -m json.tool

其中 1.jpg 就是你需要上传的文件名。可以使用绝对路径来指定文件,成功后会返回图片地址。域名是 p1.qhimg.com ,其中数字是随机的。 然后也是支持 SSL 访问的 图片域名改成 p1.ssl.qhimg.com 就可以了。通过 dns 查询 p1 p2 什么的 最后的 CNAME 记录都是一致的。所以只要固定为 p1 也是问题不大的
在上传宽度大于 620 的图片的时候,好像会被强制缩放。然而高度并没有什么限制。下图很长 上传接口1

点击这里看图。