[ https://issues.apache.org/jira/browse/CONNECTORS-98?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12908561#action_12908561 ]
Mark Miller commented on CONNECTORS-98: --------------------------------------- I agree - I think the best REST is sticking by most of the general practices as you can / makes sense - but more importantly, just be consistent. While it can be nice to stick to the http spec / REST gospel when you can, sometimes it just makes sense to be a little different. bq. (2) HTTP states that PUT should generate a 201 return when the resource is being created. Both PUT and POST can be used to create according to HTTP. bq. (3) Use of plural/singular. I don't really care much. Pick something and let me know and we'll stick with it. I agree - it's only important to be consistant internally here - otherwise, who cares. > API should be "pure" RESTful with the API verb represented using the HTTP > GET/PUT/POST/DELETE methods > ----------------------------------------------------------------------------------------------------- > > Key: CONNECTORS-98 > URL: https://issues.apache.org/jira/browse/CONNECTORS-98 > Project: Apache Connectors Framework > Issue Type: Improvement > Components: API > Affects Versions: LCF Release 0.5 > Reporter: Jack Krupansky > Fix For: LCF Release 0.5 > > > (This was originally a comment on CONNECTORS-56 dated 7/16/2010.) > It has come to my attention that the API would be more "pure" RESTful if the > API verb was represented using the HTTP GET/PUT/POST/DELETE methods and the > input argument identifier represented in the context path. > So, GET outputconnection/get \{"connection_name":_<connection_name>_\} would > be GET outputconnections/<connection_name> > and GET outputconnection/delete \{"connection_name":_<connection_name>_\} > would be DELETE outputconnections/<connection_name> > and GET outputconnection/list would be GET outputconnections > and PUT outputconnection/save > \{"outputconnection":_<output_connection_object>_\} would be PUT > outputconnections/<connection_name> > \{"outputconnection":_<output_connection_object>_\} > What we have today is certainly workable, but just not as "pure" as some > might desire. It would be better to take care of this before the initial > release so that we never have to answer the question of why it wasn't done as > a "proper" RESTful API. > BTW, I did check to verify that an HttpServlet running under Jetty can > process the DELETE and PUT methods (using the doDelete and doPut method > overrides.) > Also, POST should be usable as an alternative to PUT for API calls that have > large volumes of data. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.