Questions tagged «rest»

REST(表示状态传输)是一种用于分布式超媒体系统(例如,万维网)的软件体系结构。相对于RPC体系结构(例如SOAP),由于客户端与服务器之间的固有解耦(由于异构系统之间具有统一的接口),它的流行度有所提高。

3
HTTP请求方法的有效载荷
HTTP上的Wikipedia条目列出了以下HTTP请求方法: HEAD:请求与GET请求相同的响应,但没有响应主体。 GET:请求表示指定资源。 POST:将要处理的数据(例如,从HTML表单)提交到标识的资源。数据包含在请求的正文中。 PUT:上载指定资源的表示。 DELETE:删除指定的资源。 跟踪:回显收到的请求,以便客户端可以看到中间服务器所做的更改(如有)或添加的内容。 选项:返回服务器支持的指定URL的HTTP方法。可以通过请求“ *”而不是特定资源来检查Web服务器的功能。 CONNECT:将请求连接转换为透明的TCP / IP隧道,通常是为了通过未加密的HTTP代理促进SSL加密的通信(HTTPS)。 补丁:用于对资源进行部分修改。 我有兴趣了解(特别是关于前五个方法): 这些方法中的哪一个能够(应该?)接收有效载荷 可以接收有效载荷的方法中,它们如何接收? 通过URL中的查询字符串? 通过URL编码的正文? 通过原始/分割的身体? 通过以上([全部/部分]的组合)? 感谢您的所有投入,如果您可以分享一些(最好是轻度的)阅读,那太好了!

4
保护我的Node.js应用程序的REST API?
我可以在REST API上提供一些帮助。我正在编写一个使用Express,MongoDB并在客户端具有Backbone.js的Node.js应用程序。我花了最后两天的时间来尝试解决所有这些问题,但运气并不好。我已经签出了: 保护REST API 使用OAuth保护我的REST API,同时仍然允许通过第三方OAuth提供程序进行身份验证(使用DotNetOpenAuth) http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/ http://tesoriere.com/2011/10/10/node.js-getting-oauth-up-and-working-using-express.js-and-railway.js/ 我想使后端和前端尽可能分开,所以我认为使用精心设计的REST API会很好。我的想法是,如果我打算开发一个iPhone应用程序(或类似的东西),它可以使用API​​来访问数据。 但是,我希望这是安全的。用户已登录我的Web应用程序,并且我想确保我的API安全。我阅读了有关OAuth,OAuth 2.0,OpenID,Hmac,哈希等的信息。 ...但是我还是很困惑。也许是在深夜,或者我的大脑被炸了,但是我真的可以在这里做些什么。创建安全API的步骤是什么? 任何帮助,任何信息,任何示例,步骤或任何东西都将是不错的。请帮忙!

11
您如何进行HTTP Put?
我们拥有带有Web服务组件的软件。 现在,这个系统的管理员来找我,想通过使用webservices组件将数据导入到系统中。 因此,我去阅读了文档,试图弄清楚这件事,并且看到了这样的事情: 单击此处查看我在说什么(在Firefox,Chrome和Safari浏览器中效果最好) 该文档提供了使用HTTP动词(例如GET,POST,PUT,DELETE)与系统进行交互的示例。但是以我有限的经验,我从来没有发送过HTTP PUT或DELETE。 你怎么做呢?我建立了具有method =“ post”或method =“ get”的HTML表单,并将请求发送到action属性中指定的任何内容(action =“ someResource”)。但是我真的不知道该怎么做。 如果我不得不猜测,我将不得不构建一个应用程序,该应用程序创建某种HTTP Request对象并设置其所有属性,并以某种方式包括我要放入RESOURCE的数据(我正在尝试使用REST术语,这对我来说是很新的)。然后,我将使用我的编程语言发送请求,等等等等。我只是在猜测。请提供一些帮助! 我以为自己是一名Web开发人员,因为我了解诸如XHTML,CSS,JavaScript等之类的东西,但是开始看起来我对Web(HTTP)的基础一无所知。 编辑 PS:我主要使用.net进行编程。因此,.net中的任何示例都将非常出色。
68 xml  web-services  http  rest  put 

6
如果REST API返回JSON,则为哪种MIME类型?
我的REST API返回JSON。 我目前正在将text / plain作为MIME类型返回,但是感觉很有趣。我应该返回application/x-javascript还是其他类型? 第二个问题是关于错误状态的HTTP状态代码。如果我的REST API返回错误状态,则返回JSON { result: "fail", errorcode: 1024, errormesg: "That sucked. Try again!" } HTTP状态代码是否应保留在200 OK?
68 json  api  http  rest  mime-types 

2
使用自定义端点扩展现有API
我正在为多个客户创建一个API。像/users每个客户一样使用核心端点,但是某些端点依赖于单独的自定义。因此,可能是用户A需要一个特殊的终结点,/groups而其他客户将没有该功能。就像附带说明一样,由于这些额外功能,每个客户也将使用自己的数据库架构。 我个人使用NestJs(引擎盖下的Express)。因此,app.module当前注册了我所有的核心模块(带有自己的端点等)。 import { Module } from '@nestjs/common'; import { UsersModule } from './users/users.module'; // core module @Module({ imports: [UsersModule] }) export class AppModule {} 我认为这个问题与NestJs无关,因此您在理论上将如何处理? 我基本上需要一个能够提供基本系统的基础架构。由于每个扩展都是唯一的,/users因此可能不再存在核心端点。开发新功能时,不应触摸核心应用程序。扩展应自行集成或在启动时进行集成。核心系统没有端点,但将从这些外部文件扩展。 我想到了一些主意 第一种方法: 每个扩展都代表一个新的存储库。定义一个包含所有扩展项目的自定义外部文件夹的路径。此自定义目录将包含一个groups带有groups.module import { Module } from '@nestjs/common'; import { GroupsController } from './groups.controller'; @Module({ controllers: [GroupsController], }) export class GroupsModule {} …

3
进入控制器后进行后期绑定动态解析模型
我正在寻找一种在控制器中执行动作后解析模型的方法,描述问题的最简单方法是: public DTO[] Get(string filterName) { //How can I do this this.Resolve<MyCustomType>("MyParamName"); } 如果您正在寻找有关我为什么要这样做的更多信息,则可以继续阅读以获取完整信息。 TL; DR 我正在寻找一种解决模型请求的方法,给定一个始终从查询字符串中解析的参数名称。如何从启动动态注册过滤器。我有一个要处理注册过滤器的类。 在启动类中,我希望能够向我的restServices动态注册过滤器。我有一个用来传递给我的自定义ControllerFeatureProvider的选项,大致如下所示: public class DynamicControllerOptions<TEntity, TDTO> { Dictionary<string, Func<HttpContext, Expression<Func<TEntity, bool>>>> _funcNameToEndpointResolverMap = new Dictionary<string, Func<HttpContext, Expression<Func<TEntity, bool>>>>(); Dictionary<string, List<ParameterOptions>> _filterParamsMap = new Dictionary<string, List<ParameterOptions>>(); public void AddFilter(string filterName, Expression<Func<TEntity, bool>> filter) { this._funcNameToEndpointResolverMap.Add(filterName, …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.