然后,我如何公开实际允许从浏览器执行此类请求的各种表单?更广泛的:假设我有相同资源的替代视图(可能还有HTML),我在哪里放这些?可以说,这些形式可以被视为替代观点,因此对更广泛的问题的答案将是理想的.
编辑:为了澄清,我的问题不是关于提供JSON或诸如此类的纯数据API,而是关于HTML应用程序,例如Stackoverflow.例如,您可以获得/questions
下的问题集合以及/questions/24696982
中的特定问题.要获得添加新问题的表单,您必须使用/questions/ask
,我不确定是否正常.那形成POST到/questions/ask/submit
,这似乎是完全错误的.向该URL发出GET请求会产生404(如果有的话,它应该是405).表格应该是POST / to.我仍然想知道在RESTful系统中是否至少认为表单的URI是可接受的.
GET API.domain/questions - RetrIEves a List of tickets GET API.domain/questions/12 - RetrIEves a specific ticket POST API.domain/questions - Creates a new ticket PUT API.domain/questions/12 - Updates ticket #12 DELETE API.domain/questions/12 - Deletes ticket #12 PATCH API.domain/questions/12 - Partially updates ticket #12 #I only want to display that this also exists - i don't really use it...
真棒编辑:正如您所看到的,stackoverflow也使用此方法:API.stackexchange.com
因此,您可以看到您可以拥有这些结构 – 但您也可以在www.domain / questions / ask上找到一个表单,此表单将通过POST将请求发送到API.domain / questions.我想参考:https://thenewcircle.com/s/post/1221/designing_a_beautiful_rest_json_api_video这是一个你应该听过的非常好的播客.
编辑:(另一种观点)
另一个想法是,如果您的客户端向您发送正确的Accept-header,您可以简单地选择应该返回哪些内容(Json,XML,HTML).
例1:
URL REQUEST ACCEPT header RESPONSE -----------------------------------------------------------------------------------------domain/questions GET application/Json all questions as Jsondomain/questions GET text/HTML the page as HTML with all questionsdomain/questions/ask GET text/HTML Your HTML for to add a new questiondomain/questions POST application/Json Add a new new questions (this would be called from ./ask to add the new questionsdomain/questions/ask GET application/Json 404 Status-Code because on questions/ask you don't have implemented any resource
实施例-2:
URL REQUEST ACCEPT header RESPONSE -----------------------------------------------------------------------------------------domain/questions/12 GET application/Json Shows the questions with the ID 12 as JsONdomain/questions/12 GET text/HTML Shows the HTML representation of your pagedomain/questions/12/edit GET text/HTML Your HTML for to edit a the questiondomain/questions/12 PUT application/Json Updates the questions with the ID 12 // just to add the PATCH thing.. i don't really use it but if you don't update the whole object you Could/should use PATCH instead of PUT :pdomain/questions/12/edit GET application/Json 404 Status-Code because on questions/ask you don't have implemented any resource
昨天我告诉你关于第一个想法(这是 – 我认为使用API作为一个团队(一个用于前端和一个开发API的团队 – 一个更好的方法)但是@jackweirdy评论(感谢你 – 然后搜索很多,正在看世界各地开发商的其他播客,以及他们将如何做到这一点)下面真的由你决定 – 这是你的API,最后你/你的团队将决定一种方式.希望这有助于你或寻找如何在REST背景上构建API的其他方法.
EDIT-Section中的示例(如果我做对了)不像stackoverflow那样
总结以上是内存溢出为你收集整理的在RESTful html应用程序中放置表单/替代视图的位置?全部内容,希望文章能够帮你解决在RESTful html应用程序中放置表单/替代视图的位置?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)