问题描述
我正在使用twilio最新的PHP sdk 6.10
。在这里,我试图进行通知API调用以发送批量消息。
它工作正常,但是它返回的请求Response不是正确的json
格式。相反,我得到类似自定义对象属性的东西
Twilio\Rest\Notify\V1\Service\NotificationInstance Object
(
[version:protected] => Twilio\Rest\Notify\V1 Object
(
[_credentials:protected] =>
[_services:protected] => Twilio\Rest\Notify\V1\ServiceList Object
(
[version:protected] => Twilio\Rest\Notify\V1 Object
*RECURSION*
[solution:protected] => Array
(
)
[uri:protected] => /Services
)
[domain:protected] => Twilio\Rest\Notify Object
(
[_v1:protected] => Twilio\Rest\Notify\V1 Object
*RECURSION*
[client:protected] => Twilio\Rest\Client Object
(
[username:protected] => sidddddddddddddd555555555555555
[password:protected] => jk44444444444444555555555555555
[accountSid:protected] => sighhhhhhhhhhhhhhhhhh44444444
[region:protected] =>
[edge:protected] =>
[httpClient:protected] => Twilio\Http\CurlClient Object
(
[curlOptions:protected] => Array
(
)
.
.
.
如何使其以正确的json
格式返回响应?
这就是我发出发送请求的方式
$notification = $client
->notify->services($messagingServiceSid)
->notifications->create([
"toBinding" => $binding,"body" => $sms_text
]);
或者如何从这种类型的响应中获取所需的数据?
解决方法
这里是Twilio开发人员的传播者。
Twilio PHP库不会将原始JSON返回给您。而是解析它并将其转换为一个PHP对象,您可以调用该对象来检索数据或使用其进行进一步的API调用。
您拥有的对象是NotifcationInstance
,其文档位于此处:https://www.twilio.com/docs/libraries/reference/twilio-php/6.10.3/classes/Twilio_Rest_Notify_V1_Service_NotificationInstance.html。
源代码(包括所有属性)在此处:https://github.com/twilio/twilio-php/blob/main/src/Twilio/Rest/Notify/V1/Service/NotificationInstance.php
因此,您可以通过调用实例的属性来获取数据:
$notification = $client
->notify->services($messagingServiceSid)
->notifications->create([
"toBinding" => $binding,"body" => $sms_text
]);
echo $notification->sid;
echo $notification->body;