2014-12-09 3 views
0

AFAIK 모든 리소스에는 REST 디자인의 URL이 있습니다. 예를 들어 /user/28은 id가 28 인 사용자의 URL이고 /users은 모든 사용자를 반환합니다. (JSON 형식의 사용자를 얻을 수 /users.json/users URL을 변경)이 확장을 사용하여 지정 format URL의 나머지 리소스 출력 형식을 패스

  • 같은 쿼리 매개 변수를 전달

    • :

      자원의 출력 형식을 대표하는 몇 가지 방법이 있습니다

    • Accept http 헤더를 설정하여 요청한 형식 (xml, json, xls, ...)을 지정합니다.

    나는 웹을 검색하며 올바른 방법은 Accept 헤더를 설정하는 것 같습니다. 그러나 xls 형식의 사용자 목록을 다운로드 할 수있는 http 링크 (href로 지정)가 필요하다면 xls 형식의 사용자 목록을 다운로드 할 수 없습니다! 브라우저에서 xls을 다운로드하려는 경우 많은 문제가 발생합니다. 아약스 그래서 xls은 아약스 등을 사용하여 다운로드해야합니다.)

    가장 좋은 방법이라면 다운로드 링크를위한 해결책은 무엇입니까? 그렇지 않다면 어떤 해결책이 더 좋습니까?

  • +0

    HTTP 표준을 읽어야합니다. 수락 헤더 대신 다른 솔루션을 사용할 수 있다면 알려줄 것입니다. accept 헤더를 반드시 사용해야하는 것은 아니라면 새로운 URI를 리소스에 바인드 할 수 있습니다. – inf3rno

    답변

    0

    Accept 헤더는 '보다 정확한'것으로 간주되지만, 언급 한 모든 옵션의 예제가 많이 있습니다. 내가 말할 수있는 한 그들 중 누구도 "나쁜"것으로 간주되지 않습니다. 개인적으로는 Accept 헤더를 선호하고 선호해야한다고 말하고 있지만 format 쿼리 매개 변수가있는 경우이를 무시해야합니다. '확장'방식의 단점은 각 형식이 다른 자원을 생성하여 추악해질 수 있다는 것입니다.

    관련 문제