如何通过PHP调用云开发的HTTP API触发云函数?
发布于 5 年前 作者 dongfang 1957 次浏览 来自 官方Issues

官方的文档是用post请求然后传4个参数,但是那个POSTBODY到底是传什么,官方文档也没说明,我没传POSTBODY报的-501007错误;

请问各位有没有通过php调用http api的案例借我参考一下;

//获取接口凭证access_token
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$secret}";
$json_str = file_get_contents($url);
$aTest = json_decode($json_str, true);
 
print_format_r($aTest);
 
//http api 触发云函数
$access_token = $aTest['access_token'];
$env = 'qr-cs8dp';
$name = 'test';
 
$curl = curl_init();
// 使用curl_setopt()设置要获取的URL地址
$url2 = "https://api.weixin.qq.com/tcb/invokecloudfunction?access_token={$access_token}&env={$env}&name={$name}";
curl_setopt($curl, CURLOPT_URL, $url2);
// 设置是否输出header
curl_setopt($curl, CURLOPT_HEADER, false);
// 设置是否输出结果
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
// 设置是否检查服务器端的证书
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
// 使用curl_exec()将CURL返回的结果转换成正常数据并保存到一个变量
$data = curl_exec($curl);
// 使用 curl_close() 关闭CURL会话
curl_close($curl);
 
$data = json_decode($data);
$data = get_object_vars($data);
 
print_format_r($data);
回到顶部