0

我正在考虑设计一个 ReST 服务,其中资源可以以多种表示形式提供服务。

我首选的方法是让客户端使用适当的 Accept 标头发出请求,并使用在 Accept 上设置的 Vary 标头进行响应:

Vary: Accept

我的问题是,互联网上的各种硬件(代理层等)是否会尊重这一点,或者当我的一个客户要求某种 xml 时,我是否会冒着为我的一个客户提供我的资源的 pdf 表示的硬件的风险?表示?

我的替代方法是通过 uri 扩展运行 conneg

~/resource.pdf  ||   ~/resource.xml) 

或更可能通过查询字符串参数:

~/resource?content-type=application/pdf    ||    ~/resource?content-type=application/vnd.mytype+xml

所以:我会接受 Vary:Accept,还是我需要通过弄乱我的 Url 来保证安全?哪些硬件会给我带来问题?还有什么我应该考虑的吗?

谢谢

4

0 回答 0