Я писал API, используя Symfony в качестве бэкэнда, плагин, написанный третьей стороной, отправляет определенные данные в конечную точку, затем конечная точка возвращает ответ в кодировке json, однако, следуя инструкциям, изложенным втекущая документация Symfony (https://symfony.com/doc/current/components/http_foundation.html), возвращаемое значение отображается дважды, а ответ неправильно сформирован и выводит как строка
Исходный метод, который я написал, имел вызовы в базу данных для проверки токена, хранилищезакладка и отображение результата процесса бэкэнда, однако при переходе к медленным действиям и удалению всего, кроме построения ответа, очевидно, что именно в этом проблема. Метод использует этот фрагмент, хотя для ясности я не включилобработка базы данных и использование опубликованных значений в качестве возвращаемого массива; результат будет таким же, если это будут опубликованные или обработанные данные, выходные данные отобразятся дважды.
$token = $request->request->get('token');
$bookmark = $request->request->get('bookmark');
$data = ['token' => $token, 'bookmark' => $bookmark];
$response = new Response();
$response->headers->set('Access-Control-Allow-Origin', '*');
$response->setContent(json_encode($data));
$response->send();
return $response;
То, что я ожидал, было одним ответом jsonно что возвращаетсяявляется двойной строкой вывода json
например, если я разместил эти значения в приведенном выше фрагменте:
token: ksjdbvqpi8e7rqp7evbprb
bookmark: http://www.google.com
, то результат будет
{"token":"ksjdbvqpi8e7rqp7evbprb", "bookmark":"http:\/\/www.google.com"}{"token":"ksjdbvqpi8e7rqp7evbprb", "bookmark":"http:\/\/www.google.com"}
, когда яожидалось было просто
{"token":"ksjdbvqpi8e7rqp7evbprb", "bookmark":"http:\/\/www.google.com"}
В настоящий момент я понятия не имею, почему он отображается дважды, любая помощь, как всегда, ценится.
Спасибо