关于最近(2016年)新微信文档开发的问题,跪求CSDN版本里面的大神们来看看
2016年新版的微信开发文档,要求调用的接口都是https协议下的,然而本人在项目开发中,遇到了一个问题 就是在
本服务器上面上传图片素材的时候,通过CURL扩展无法实现对https协议的数据传输,导致了接口调用出现 media data
is missing 这个问题,而在官方中,没有给出一个具体的数据类型,我不知道微信服务器接收的数据格式是否和以前
那个http协议下CURL扩展能轻松返回给你一个json数据格式,并通过media_id 进行下一步操作,我尝试了很多方法
fie_get_contents 用过把文件变为二进制文件传输给微信服务器,json格式的 然而都没有效果,
求PHP版本里面的大神来看看!!!
回复讨论(解决方案)
这是我去年写的一个上传素材库的接口
//上传永久素材地址 const UPLOADIMAGE = "https://api.weixin.qq.com/cgi-bin/material/add_material?"; function upload_curl_pic($file){ $file = "@".dirname(DATA_DIR)."/data/temp/".$file; $fields = array("media" => $file); $media_id = $this->http_postform(self::UPLOADIMAGE.'access_token='.$this->access_token, $fields); return $media_id; }/* * form表单上传永久素材文件 * return media_id=>素材id */ public function http_postform($url, $data = null){ $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); if (!empty($data)){ curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curl); curl_close($curl); return $output; }
刚刚试了试 没问题呀 实质上她要求你通过curl 的form表单方式上传 类似与html中的form文件上传一样 需要设置filename、filelength、content-type等信息
不知道你程序怎么写的 感觉微信的接口没怎么变啊,两年钱的写接口还在用,没发现你说的问题,你指的是哪个接口?
现在的新的素材 上传临时和永久的素材 都不是用这种方式了 而且 这种方式 curl我试过啊 ,2016年的新的接口跟你这种调用方式不同了 https: 我试了下 curl 对http有效, 但是对于https就挂了 好郁闷。
本人环境问题 ,导致CURL扩展没法使用 。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Alipay PHP...

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

Article discusses late static binding (LSB) in PHP, introduced in PHP 5.3, allowing runtime resolution of static method calls for more flexible inheritance.Main issue: LSB vs. traditional polymorphism; LSB's practical applications and potential perfo

Session hijacking can be achieved through the following steps: 1. Obtain the session ID, 2. Use the session ID, 3. Keep the session active. The methods to prevent session hijacking in PHP include: 1. Use the session_regenerate_id() function to regenerate the session ID, 2. Store session data through the database, 3. Ensure that all session data is transmitted through HTTPS.

The application of SOLID principle in PHP development includes: 1. Single responsibility principle (SRP): Each class is responsible for only one function. 2. Open and close principle (OCP): Changes are achieved through extension rather than modification. 3. Lisch's Substitution Principle (LSP): Subclasses can replace base classes without affecting program accuracy. 4. Interface isolation principle (ISP): Use fine-grained interfaces to avoid dependencies and unused methods. 5. Dependency inversion principle (DIP): High and low-level modules rely on abstraction and are implemented through dependency injection.

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

How to debug CLI mode in PHPStorm? When developing with PHPStorm, sometimes we need to debug PHP in command line interface (CLI) mode...

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.
