curl上传微信公众资源文件失败

发布于 2022-09-01 21:49:59 字数 142 浏览 12 评论 0

在开发微信公众平台的时候,需要把图片发给用户,需要先把图片上传到微信的服务器,采用临时媒体接口,用curl上传文件的时候,总是提醒文件上传错误,内容好像是说不存在。

由于现在在公交车上,明天贴上具体的代码和错误提示,这里想请以前遇到过的,说说解决办法。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

歌枕肩 2022-09-08 21:49:59

这是我的,可以用。
内容不存在至少你等调试看看吧?

微信调试平台:

也可以自行建一个post.php文件看收到的数据与测试平台的数据是否一致。

图片描述

<?php
//'D:\WWW\20150906120321.jpg'
$file_info=array(
    'filename'=>'/20150906120.jpg',  //相对于网站根目录的路径
    'content-type'=>'image/jpeg',  //文件类型
    'filelength'=>filesize(dirname(__FILE__).'/20150906120.jpg')//图片大小
);
print_r(add_material($file_info));
function add_material($file_info){
    $access_token='W689lQ7HnMnwNb91uXD1mb1HeubNPiJvyjBG2uze8EhyixN8v1awuOx07nDJCPd1sPk2d1VaqrulZHySF0qR82qOsIinN6t4uht6tBzwMfcAHFaAIANUS';
    $url="https://api.weixin.qq.com/cgi-bin/material/add_material?access_token={$access_token}&type=image";
    $ch = curl_init ();
    $timeout = 30;
    $real_path="{$_SERVER['DOCUMENT_ROOT']}{$file_info['filename']}";
    $data= array("media"=>"@{$real_path}");//,'form-data'=>$file_info
    curl_setopt ( $ch, CURLOPT_URL, $url );
    curl_setopt ( $ch, CURLOPT_POST, 1 );
    curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
    curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, $timeout );
    curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );
    curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false );
    @curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
    $result = curl_exec ( $ch );
    curl_close ( $ch );
    if(@curl_errno($result)==0){
        return json_decode($result,true);
    }else {
        return false;
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文