मेरे आवेदन का एक हिस्सा एपीआई के रूप में उपलब्ध होगा, इसलिए मेरे कुछ पेज को JSON या XML (स्वीकार्य हेडर 'सामग्री प्रकार' के आधार पर) में उपलब्ध होना आवश्यक है।Symfony2 + FOSRestBundle: प्रति नियंत्रक/क्रिया प्रति REST कार्यक्षमता को सक्षम/अक्षम करें?
मैं FOSRestBundle का उपयोग किया है और यह बहुत अच्छी तरह से काम करता है, लेकिन अब सभी अपने पृष्ठों एक्सएमएल (या JSON) में उपलब्ध हैं जब भेजने हैडर स्वीकार करें 'सामग्री प्रकार: application/xml'।
तो, मैं अपने कुछ नियंत्रकों/कार्यों के लिए इस कार्यक्षमता को सक्षम/अक्षम करना चाहता हूं। मैं एनोटेशन का उपयोग करके ऐसा करने के लिए आदर्श होगा।
क्या यह संभव है?
मेरे config.yml:
fos_rest:
view:
formats:
rss: false
xml: true
json: true
templating_formats:
html: true
force_redirects:
html: false
failed_validation: HTTP_BAD_REQUEST
default_engine: twig
view_response_listener: force
body_listener:
decoders:
json: acme.decoder.json
xml: fos_rest.decoder.xml
format_listener:
default_priorities: ['html', 'xml', 'json', '*/*']
fallback_format: html
prefer_extension: false
अच्छा लगता है, लेकिन यह काम करने के लिए प्रतीत नहीं होता। –
यह मेरे लिए काम करता है। क्या आप सही 'व्यू' एनोटेशन क्लास का उपयोग कर रहे हैं? क्या आप अधिक जानकारी प्रदान कर सकते हैं? –
यदि आप 'बाकी के रूप में FOS \ RestBundle \ Controller \ Annotations का उपयोग करते हैं;', आपकी टिप्पणियां '@ व्यू 'की बजाय' @Rest \ View' होनी चाहिए – alexismorin