根据HTTP/1.1规范:
该
POST方法用来请求原始服务器接受被附在请求由标识的资源的新下属实体Request-URI的Request-Line
换句话说,POST用于创建.
该
PUT方法请求将所包含的实体存储在提供的实体下Request-URI.如果Request-URI引用已经存在的资源,则封闭的实体应该被视为驻留在源服务器上的实体的修改版本.如果Request-URI未指向现有资源,并且该URI能够被请求用户代理定义为新资源,则源服务器可以使用该URI创建资源.
也就是说,PUT用于创建或更新.
那么,应该使用哪一个来创建资源?或者需要支持两者?
我正在使用AWS S3 REST API,在解决了一些令人烦恼的签名问题之后,它似乎有效.但是,当我使用正确的REST动词创建资源时POST,我得到了405 method not allowed.相同的请求与方法一起工作PUT并创建资源.
我做错了什么,或者AWS S3 REST API不完全符合REST标准吗?
一世 理解(我认为)RESTful-ness背后的基本思想.在语义上使用HTTP方法 - GET获取,PUT put,DELETE删除等等......对吗?我以为我理解了REST背后的想法,但我认为我对HTTP实现的细节感到困惑.休息背后的驱动理念是什么,为什么这成为一件重要的事情?人们实际上已经使用了很长时间,在我的手电筒从未照过的互联网的一角?
使用.Net框架使用RESTful服务有哪些选择?什么时候WCF(使用WebChannelFactory)比HttpClient更可取?
可能的重复:
SOAP或REST
为什么我们需要RESTful Web服务?
嗨伙计,
最近,提到了很多REST Web服务.使用它比其他方法的原因是什么?它们是否在WCF中使用?我们如何实施?
TIA
我刚与一位同事进行了对话,并谈论了V8 JavaScript引擎.根据维基百科,
V8在执行之前将JavaScript编译为本机机器代码,而不是更传统的技术,例如解释字节码或将整个程序编译为机器代码并从文件系统执行.
where(纠正我,如果我错了)" 解释字节码 "是Java的工作方式," 编译整个程序 "将适用于C或C++等语言.现在我们想知道,辩论并提出关于差异,相似性的错误断言和推定.为了结束这一点,我建议询问SO专家.
那么,谁能够
笔记:
compiler-construction interpreter compilation interpretation
我正在尝试决定该做什么我这个场景:
我想创建一个我想在SaaS商业模式中销售的产品,我已经或多或少地想到了后端,并且在nodejs中有一些代码.它处理oAuth,会话,并在访问某个端点时控制用户的角色.
怀疑是在前端架构中:每个客户端将共享相同的功能,但他们的页面设计将完全不同.我想在服务中加入尽可能多的app逻辑,所以我可以重用它,我的想法是只将控制器/模板/指令从客户端更改为客户端,这样可以吗?
我应该有不同的文件夹,并为nodejs中的每个客户端提供静态文件吗?例如:在nodejs中我会知道client1的url被调用所以我会提供client1-index.html吗?
我应该将每个客户端放在他们自己的nodejs服务器和他们自己的主机中吗?
有什么其他方式?
我希望能够轻松地重用这些服务,因为我将引入功能的更改或添加更多,我想轻松地进行此升级.
还将有一个管理面板,对于所有这些面板将完全相同,将更改的部分是我的客户的用户看到的部分.
可以把它想象成拥有许多客户并给他们每个人一个商店,这样他们就可以卖掉他们的东西.他们想要一个管理页面和一个公共页面.管理页面对所有人都是相同的,但公共页面必须更改.
那么,并且应用程序在用户之间共享相同的功能,但对于每个用户而言看起来完全不同,您将如何做到这一点?
好吧,标题或多或少都说明了一切.我有点理解REST是什么 - 使用现有的HTTP程序(POST,GET等)来促进Web服务的创建/使用.我对如何定义Web服务有什么更加困惑是,将其余的实际上是如何用来制造/暴露的服务.
例如,根据我的阅读,Twitter是RESTful.这究竟意味着什么?如何调用HTTP过程?当我写一条推文时,REST是如何涉及的,除了简单地使用服务器端语言并将该文本数据存储在数据库或文件中之外,它有何不同?
我们目前正在处理来自我们巨石的小型服务.我们的域名与票务系统非常相似.我们已决定从域名的取消过程开始.
我们的取消服务具有简单的端点"取消",它接收票证的ID.在内部,我们检索id,执行与取消相关的一些操作,并更新商店中实体的状态.从商店的角度来看,取消的机票和实时机票之间的唯一区别是一些属性.
根据我的阅读,PATCH似乎是在这种情况下使用的正确动词,因为我只更新资源中的一个简单属性.
PATCH /api/tickets/{id}
Payload {isCancelled: true}
Run Code Online (Sandbox Code Playgroud)
但isCancelled不是实体中的实际属性.在有效载荷中发送不属于实体的属性是否公平,还是应该考虑对此请求进行建模的其他形式?我不希望将整个实体作为有效载荷的一部分发送,因为它很大.
我考虑过创建一个新的资源CancelledTickets,但在我们的域名中,我们永远不需要对已取消的门票进行GET.因此,不必创建新资源
任何帮助将不胜感激
谢谢K.
rest ×8
web-services ×3
http ×2
.net ×1
amazon-s3 ×1
angularjs ×1
api ×1
c# ×1
code-reuse ×1
compilation ×1
http-patch ×1
http-verbs ×1
interpreter ×1
node.js ×1
post ×1
put ×1
reusability ×1
saas ×1
wcf ×1