Php 使用twilio发送文本图片图像
我正在尝试使用php和curl,使用twilio通过文本发送图像。 发送文本很好…效果很好。 我也在尝试添加一个图像-似乎忽略了与图像相关的字段(没有错误-只是没有图像) 下面是我正在使用的代码Php 使用twilio发送文本图片图像,php,curl,sms,twilio,mms,Php,Curl,Sms,Twilio,Mms,我正在尝试使用php和curl,使用twilio通过文本发送图像。 发送文本很好…效果很好。 我也在尝试添加一个图像-似乎忽略了与图像相关的字段(没有错误-只是没有图像) 下面是我正在使用的代码 function send_sms( $sid, $token, $to, $from, $body ) { $uri = 'https://api.twilio.com/2010-04-01/Accounts/' . $sid . '/SMS/Messages'; $auth = $sid
function send_sms( $sid, $token, $to, $from, $body ) {
$uri = 'https://api.twilio.com/2010-04-01/Accounts/' . $sid . '/SMS/Messages';
$auth = $sid . ':' . $token;
$postfields = Array(
'From'=>$from,
'To'=>$to,
'Body'=>$body,
'MediaUrl'=>'http://imageurl.jpg',
'MediaContentType'=>'image/jpeg'
);
// start cURL
$res = curl_init();
// set cURL options
curl_setopt( $res, CURLOPT_POST, true);
curl_setopt( $res, CURLOPT_URL, $uri );
curl_setopt( $res, CURLOPT_POSTFIELDS, $postfields );
curl_setopt( $res, CURLOPT_USERPWD, $auth );
curl_setopt( $res, CURLOPT_RETURNTRANSFER, true );
// send cURL
$result = curl_exec( $res );
return $result;
}
更新:问题解决:问题是我使用了错误的API URL!
我需要消除“/SMS”-它本身是有效的,但只适用于
纯文本消息。有一次我只用$sid.'/Messages'-效果很好
另外,/Messages将返回XML状态。如果您使用/messages.json,请单击它
将返回一个JSON块。根据他们的API文档:
您希望随邮件发送的媒体的URL。当前支持gif、png和jpeg内容,并将在收件人的设备上正确格式化。API也接受其他类型。介质大小限制为5MB。如果您希望在邮件正文中发送多个图像,请在POST请求中提供多个MediaURL值。每封邮件最多可包含10个MediaURL。
您可以指定.jpg而不是.jpEg。这可能是个问题
是您的
http://imageurl.jpg
是否可以通过web访问?Twilio需要能够检索它是的,图像url是可访问的。最初,该图像是一个发送图像的.php程序,运行良好。然而,为了确保不是这样,我将其更改为实际的.jpg图像。它的大小也不到1MB。已解决:我需要使用API URL:$uri=''$希德/信息';(已删除/SMS)。还要检查您对图像的权限,确保您可以在浏览器中查看图像。否,文件结尾和文件类型并不总是完全匹配。请不要发布不是真实答案而是问题的答案。