File tree 1 file changed +14
-3
lines changed
1 file changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -267,14 +267,25 @@ private function sendGetRequest(string $api): array
267
267
268
268
/**
269
269
* Отправка POST-запроса
270
- * @param JsonSerializable $data запрос
270
+ * @param string| JsonSerializable $data запрос
271
271
* @param string $api адрес API (URI)
272
272
* @return array ответ сервера Ypmn
273
273
* @throws PaymentException
274
274
*/
275
- private function sendPostRequest (JsonSerializable $ data , string $ api ): array
275
+ public function sendPostRequest ($ data , string $ api ): array
276
276
{
277
- $ encodedJsonData = $ data ->jsonSerialize ();
277
+ if ($ data instanceof JsonSerializable) {
278
+ $ encodedJsonData = $ data ->jsonSerialize ();
279
+ } elseif (is_string ($ data )) {
280
+ if (json_decode ($ data ) !== false ) {
281
+ $ encodedJsonData = $ data ;
282
+ } else {
283
+ throw new PaymentException ('Incorrect request body type ' );
284
+ }
285
+ } else {
286
+ throw new PaymentException ('Incorrect request body JSON ' );
287
+ }
288
+
278
289
279
290
$ encodedJsonDataHash = md5 ($ encodedJsonData );
280
291
You can’t perform that action at this time.
0 commit comments