本文介紹使用PHP SDK將SMQ消息發布至主題時的準備工作及示例代碼。
準備工作
CreateTopicAndPushMessageToQueue.php的代碼最上方有一些設置,使用SDK時需按照注釋進行設置。
// require替換為composer下載的vendor下的autoload文件。 require_once __DIR__ . '/vendor/autoload.php'; //代碼里需要用的一些PHP class。 use AliyunMNS\Client; use AliyunMNS\Exception\MessageNotExistException; use AliyunMNS\Model\SubscriptionAttributes; use AliyunMNS\Requests\PublishMessageRequest; use AliyunMNS\Requests\CreateTopicRequest; use AliyunMNS\Requests\CreateQueueRequest; use AliyunMNS\Exception\MnsException;
發布Base64編碼消息
對消息體是否進行Base64編碼的使用建議,請參見消息體編碼選擇指南。
完整示例代碼下載,請參見CreateTopicAndPushMessageToQueue。
// publish base64 encoded message
$messageBody = "test";
$request = new PublishBase64MessageRequest($messageBody);
try {
$res = $topic->publishMessage($request);
echo "Base64MessagePublished! \n";
} catch (MnsException $e) {
// 可能因為網絡錯誤等原因導致PublishMessage失敗,這里CatchException并做對應處理。
echo "PublishBase64Message Failed: " . $e;
return;
}
文檔內容是否對您有幫助?