当前位置: 首页 > 知识库问答 >
问题:

共享在线卷曲PHP文件上载API,MD5不可获取

咸利
2023-03-14

我尝试了许多不同的请求,我还更改了文件的位置和绝对路径。也许有人有时间帮我。我是新的卷曲文件上传。uplaod表单,api示例有效,但可能我不知道为什么这个卷曲不起作用,api的信息要少,它只是一个表单示例:http://www.share-online.biz/uploadapi/

这是支持票,但这没有帮助:https://www.share-online.biz/helpdesk/ticket.php?track=LPDZM15R71

结果我得到了:Server/Sessionid dlw274-1。在线分享。业务/上传AH1HBU0PC1A549

HTTP/1.1 200 OK Server:nginx日期:2017年12月12日星期二08:55:49 GMT内容类型:text/html;charset=UTF-8传输编码:分块连接:关闭访问控制允许源:*访问控制允许凭据:false

*异常md5不可获取-2017年12月12日上午8:55*

这里的代码:

function shareonlinebizupload($filelocation,$user, $pass, $servername,$sessionname){
    $fpost = array();
    $fpost["username"] = $user;
    $fpost["password"] = $pass;
    $fpost["upload_session"] = $sessionname;
    $fpost['chunk_no'] = '1';
    $fpost['chunk_number'] = '1';
    $fpost['filesize'] = "2693093";
    $fpost["finalize"] = "1";
    $fpost['fn'] = "@/Desktoppe.rar";

    $server = "http://$servername";
    $page = curl_func($server,$fpost,'','',0);
    echo $page;
}
function curl_func($link, $postfields = '', $cookie = '', $refer = '', $header = 1, $follow = 1, $usragent = ''){
    $ch = curl_init($link);
    //curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    if($header){
        //curl_setopt($ch, CURLOPT_HEADER, 1);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data'));}
    else{
        curl_setopt($ch, CURLOPT_HEADER, 1);}
    if($follow){
        @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);}
    else{
        @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);}
    if($usragent){
        curl_setopt($ch, CURLOPT_USERAGENT, $usragent);}
    else{
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1');}

    if($refer){
        curl_setopt($ch, CURLOPT_REFERER, $refer);}

    if($postfields){
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
    }
    if($cookie){
        curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
        curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
    }
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
    $page = curl_exec($ch);
    curl_close($ch);

    if(empty($page)){
        echo "<br/>Could not connect to host: <br/> $link <br/>";
        //die();
    }
    else{
        return $page;
    }
}

共有1个答案

鞠宏恺
2023-03-14

在同一上传脚本中有相同的问题。自PHP5.5.0以来,行为发生了变化。您需要对这些文件使用CURLFile。代替

$fpost['fn'] = "@/Desktoppe.rar";

$fpost['fn'] = new CurlFile("/Desktoppe.rar");

这应该可以做到:)

 类似资料:
  • 问题内容: 我想先查看请求中的帖子字段,然后再发送。(出于调试目的)。 我正在使用的PHP库(类)已经制作(不是我本人制作的),所以我试图理解它。 据我所知,它用于设置不同的选项(如标头等),然后用于发送请求。 关于如何查看正在发送哪些帖子字段的想法? 问题答案: 您可以启用以下选项: 当被设置时,输出写入 STDERR 或使用指定的文件。输出非常有用。 您还可以使用tcpdump或wirehar

  • 我在/mnt/SMB/下挂载了一个SMB共享文件夹,我可以访问这些文件。当我使用命令卸载此共享文件夹时:

  • 我在使用Docker容器时遇到了一个有点烦人的问题(我使用的是Ubuntu,所以没有像VMWare或b2d这样的虚拟化)。我已经构建了我的映像,并且有一个正在运行的容器,其中有一个来自主机的共享(装入)目录和一个来自主机的共享(装入)文件。以下是命令的全文: 注意:许多用于编辑文件的工具,包括vi和sed--in-place可能会导致inode更改。从Docker V1.1.0开始,这将产生一个错

  • 问题内容: 我正在尝试通过Windows 7计算机上的Docker容器设置开发人员环境。 我已经为Windows安装了Docker工具箱。 我有一个包含Apache和PHP 5.6的映像,这里是: 该映像已创建,当我在Docker快速入门终端中运行“ docker映像”时可以看到它。 在我的apache-config.conf中,我只有一个小的虚拟主机,仅使用index.php文件即可访问测试网站

  • 那么这里有什么解决方案可以使用php在线阅读excel或google电子表格呢? 更新: 建议@adyson使用相同的头来获取PHP下载的数据。 谢谢。