다음은 상황입니다. symfony3을 기반으로 나머지 API에서 작업하고 FOSRestBundle 및 symfony serializer 구성 요소를 사용하므로 배열을 반환하고 FOSRest가 인코딩 및 응답을 처리합니다. 문제는 serializer에서 json_encode를 기본 설정으로 사용하고 api가 일부 기호에 '\ u00c9S'와 같은 데이터를 반환한다는 것입니다. 그래서 어떻게 든 JSON_UNESCAPED_UNICODE를 json_encode()에 전달해야합니다. 이 목표에 도달하기위한 적절한 방법이 있습니까? 방법의 예 : 그래서Symfony Serializer 구성 요소의 json_encode 함수에 옵션을 전달하는 방법
namespace AppBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use FOS\RestBundle\Controller\Annotations as Rest;
use Nelmio\ApiDocBundle\Annotation\ApiDoc;
use Symfony\Component\HttpFoundation\Request;
/**
* Class ExampleController
* @package AppBundle\Controller
*/
class ExampleController extends Controller
{
/**
* @Rest\Get("/get-some-data")
* @param Request $request
* @return array
*/
public function getSomeDataAction(Request $request)
{
$someData = [
'prop1' => 'Value',
'prop2' => 'Value',
'prop3' => 'Value',
'prop4' => 'Value',
];
return $someData;
}
내가 요청을 할 '/ - 일부 데이터를 가져 오기', 그것이 나 반환
{"prop1":"Value with \/","prop2":"Value with \u00c9"}
을,하지만 난 그것을 반환해야합니다
{"prop1":"Value with /","prop2":"Value with É"}
나는 그것을 얻지 못했습니다. 나는 직렬화 과정에 관여하지 않는다. FOSRestBundle이 그것을 처리한다. 어떤 수업을 연장해야합니까? – tarasikarius
코드 예를 들려 줄 수 있습니까? 나는 내 자신을 적응 시키려고 노력할 것이다. 내 코드는 Symfony Serializer 구성 요소 만 사용합니다. – AnthonyB
질문에 예제를 추가하십시오. – tarasikarius