葫芦侠图床上传源码案例分享

事在人为 技术教程 0

看到群友说有人拿葫芦侠图床,于是我就去葫芦侠看了下,就一个个人主页上传背景图那个地方可以上传,那就直接开始抓包吧,关键词 up,我们就直接可以看到那个请求:

葫芦侠图床上传源码案例分享

直接上代码来写吧!

代码:

<?php  header('Access-Control-Allow-Origin:*');  header('Content-type:application/json; charset=utf-8');  error_reporting(0);$allowedExts = array("gif", "jpeg", "jpg", "png");  $temp = explode(".", $_FILES["file"]["name"]);$extension = end($temp);  if ((($_FILES["file"]["type"] == "image/gif")        || ($_FILES["file"]["type"] == "image/jpeg")        || ($_FILES["file"]["type"] == "image/jpg")        || ($_FILES["file"]["type"] == "image/pjpeg")        || ($_FILES["file"]["type"] == "image/x-png")        || ($_FILES["file"]["type"] == "image/png"))    && ($_FILES["file"]["size"] < 10*1024*1024)    && in_array($extension, $allowedExts)) {    if ($_FILES["file"]["error"] > 0) {        error("文件错误");    } else {        $ImageCachePath='images/hulu/';        if (!is_dir($ImageCachePath)){            $res = mkdir($ImageCachePath, 0777, true);        }        move_uploaded_file($_FILES["file"]["tmp_name"], $ImageCachePath . $_FILES["file"]["name"]);        $files = $ImageCachePath . $_FILES["file"]["name"];        $data = json_decode(upload($files)) ;        unlink($files);        if ($data->status!==1){            error("上传错误");        }else{            exit(json_encode([                "code"=>1,                "msg"=>"上传成功!",                "imgurl"=>str_replace("http","https",$data->url),                "fid"=>$data->fid,                "size"=>$data->size,            ],JSON_UNESCAPED_UNICODE));        }    }}else {    error("非法的文件格式");}function upload($file){    $post = array(        'file'=>new \CURLFile(realpath($file))    );    $ch = curl_init("http://upload.huluxia.com/upload/image/avatar?platform=2&gkey=000000&app_version=4.0.1.3.1&versioncode=275&market_id=tool_web&_key=这里的key自己去抓");    curl_setopt_array($ch, array(        CURLOPT_POST => true,        CURLOPT_VERBOSE => true,        CURLOPT_RETURNTRANSFER => true,        CURLOPT_HTTPHEADER => array(),        CURLOPT_POSTFIELDS => $post,    ));    $output = curl_exec($ch);    curl_close($ch);    return $output;}function error($str){    exit(json_encode([        "code"=>-1,        "msg"=>$str    ],JSON_UNESCAPED_UNICODE));}

这是封装好的上传返回信息,其中的 u1 还可以换成 u2 都可以用,其次就是我上传了一张 3MB 大小的图,也没有压缩的情况,就是不知道时间性怎么样,感兴趣的可以自己测试吧!


葫芦侠图床上传源码案例分享

我这边封装好的接口:https://api.oioweb.cn/api/huluxia.php 文件流请求 默认参数 file

转载于:教书先生个人博客

免责声明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

欢迎 发表评论: