2014-02-20 5 views
1

이것은 더러워 보일 수도 있지만 문서화 목적으로 사용하는 것입니다.URL 인코딩

내 설명서에 GET을 사용하여 서비스에 액세스하고 있기 때문에 사람들이 너무 복잡해지기 전에 시도 할 수 있습니다. URL에 x-http-method-override=POST을 덧붙이

이 내가 POST에 객체의 배열을 필요로 할 때를 제외하고 모든 좋은입니다 GETPOST

A와 취할 수있는 서버를 강제로. 이것은 표준 POST에서 간단하지만 오늘은 악몽의 새로운 빵이 있습니다. 당신이 볼 수 있듯이 여기까지 예술가의 배열이

{"name":"String","slug":"String","start":"String","end":"String","id":"String","artists":[{"id":"String","name":"String","slug":"String"}],"locationId":"String"} 

: 같은

예상 POST 보인다.

model/listing?start=10:10&end=12:30&artists[0].name=wayne&artists[0].id=artists-289&locationid=locations-641&x-http-method-override=POST 

을하지만 아무 소용이 :

나는 다음을 수행하려고했습니다.

서비스 스택이 만족할 수 있도록 URL 배열에 객체 배열을 가져올 수 있습니까?!

나는 이것이 할 일이 아니다 감사하지만 당신은 URL에서 복잡한 객체를 인코딩하는 JSV을 사용할 수 있습니다 그것을 클릭 예를 들어 URL을

+2

계속 하시겠습니까? REST를 남용하지 마십시오. 'GET'을 통해'POST'를 사용하려는 것 같습니다. 당신이 곤경에 빠지게 된 것은 당연합니다. 맞춰봐? 시작일뿐입니다. 지원, API 성숙도, 당황한 사용자를 생각해보십시오. 내가 너라면, 바로 그곳에서 멈추고'POST'를 사용할 것입니다. 귀하의 API 사용자는 손을 가지고 있으며 어리석게 들리더라도 잘 지능적입니다. 그들은 간단한'POST' 요청을 만들 수있을 것입니다. 당신은 또한 간단하고 실제적인 예를 제공함으로써 그들을 도울 수 있습니다. – oleksii

+3

나는 이것이 문서화만을위한 것이라고 말했어 !! 이것은 생산 코드 및 최종 사용자와 아무런 관련이 없습니다! 이것은 REST 순결과 극단적 인 REST 의견 및 종교적 신념과 아무 관련이 없습니다. 내 REST 서비스는 완벽하게 RESTful하게 동작 할 수 있으며 원하는 방식으로 문서화 할 수 있습니다. 합법적 인 질문을 사용하여 REST가 얼마나 순수한 지 증명할 수 있습니다. IMO – iwayneo

+0

나는 HTTP RFC 표준을 언급하고 있습니다. 우리가 REST의 순도에 대해 토론 할 수 있다는 것에 동의한다면 (그리고 그대로 두자.) 표준을 위반하기를 원하지 않는다. 그것은 저의 요점이었습니다. 모두가 이해할 수있는 공통된 표준이었습니다. – oleksii

답변

2

내 엔드 포인트 무한 쉽게 설명 만들고있다. 이것은 당신의 DTO에 대한 작동합니다 : 당신은 프로그래밍 ServiceStack.Text에서 ToJsv 확장 방법을 사용하여 임의의 객체에서 JSV를 만들 수 있습니다

model/listing?name=wayne&artists=[{id:artists-289,name:sample1},{id:artists-290,name:sample2}]&locationId=locations-641 

.

+0

완벽! 고맙습니다 :) – iwayneo