@@ -127,7 +127,7 @@ public function getTopicArn(): ?string
127
127
return $ this ->TopicArn ;
128
128
}
129
129
130
- public function requestBody (): array
130
+ public function requestBody (): string
131
131
{
132
132
$ payload = ['Action ' => 'Publish ' , 'Version ' => '2010-03-31 ' ];
133
133
$ indices = new \stdClass ();
@@ -153,29 +153,34 @@ public function requestBody(): array
153
153
$ payload ['MessageStructure ' ] = $ v ;
154
154
}
155
155
156
- (static function ($ input ) use (&$ payload , $ indices ) {
156
+ (static function (array $ input ) use (&$ payload , $ indices ) {
157
157
$ indices ->kb0b4646 = 0 ;
158
158
foreach ($ input as $ key => $ value ) {
159
159
++$ indices ->kb0b4646 ;
160
160
$ payload ["MessageAttributes. {$ indices ->kb0b4646 }.Name " ] = $ key ;
161
- (static function ($ input ) use (&$ payload , $ indices ) {
162
- $ payload ["MessageAttributes. {$ indices ->kb0b4646 }.Value.DataType " ] = $ input ->getDataType ();
163
- if (null !== $ v = $ input ->getStringValue ()) {
164
- $ payload ["MessageAttributes. {$ indices ->kb0b4646 }.Value.StringValue " ] = $ v ;
165
- }
166
- if (null !== $ v = $ input ->getBinaryValue ()) {
167
- $ payload ["MessageAttributes. {$ indices ->kb0b4646 }.Value.BinaryValue " ] = base64_encode ($ v );
168
- }
169
- })($ value );
161
+
162
+ if (null !== $ value ) {
163
+ (static function (MessageAttributeValue $ input ) use (&$ payload , $ indices ) {
164
+ $ payload ["MessageAttributes. {$ indices ->kb0b4646 }.Value.DataType " ] = $ input ->getDataType ();
165
+
166
+ if (null !== $ v = $ input ->getStringValue ()) {
167
+ $ payload ["MessageAttributes. {$ indices ->kb0b4646 }.Value.StringValue " ] = $ v ;
168
+ }
169
+
170
+ if (null !== $ v = $ input ->getBinaryValue ()) {
171
+ $ payload ["MessageAttributes. {$ indices ->kb0b4646 }.Value.BinaryValue " ] = base64_encode ($ v );
172
+ }
173
+ })($ value );
174
+ }
170
175
}
171
176
})($ this ->MessageAttributes );
172
177
173
- return $ payload ;
178
+ return http_build_query ( $ payload, '' , ' & ' , \ PHP_QUERY_RFC1738 ) ;
174
179
}
175
180
176
181
public function requestHeaders (): array
177
182
{
178
- $ headers = [];
183
+ $ headers = [' content-type ' => ' application/x-www-form-urlencoded ' ];
179
184
180
185
return $ headers ;
181
186
}
0 commit comments