首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

REST API 设计最佳实践:如何构建、设计和使用 API

在我的职业生涯中有很大一部分时间都参与了构建、设计和使用API 的项目。我见过的大多数API 都“声称” 是 “符合REST原则”的——意味着遵循 REST 架构的原则和约束。...在处理应用程序/编程客户端(例如,通过Python中的requests库与您的API交互的另一个服务/API)时,这一点尤为重要——其中一些客户端依赖于此标头来准确解码响应。 3....通过过滤,消费者可以指定返回项目应具有哪些参数(或属性)。分页允许用户逐步获取数据集。最简单类型的分页就是按页码进行分页,它由page和page size确定。...现在问题来了:如何将这样的功能融入REST API? 我的答案是:使用查询字符串(querystring)。 我认为使用查询字符串实现分页非常明显。它看起来像这样: GET: /books?...使用专门针对REST API的网络框架 作为最后一个最佳实践,让我们讨论这个问题:如何在您的API中实际应用最佳实践?大多数时候,您希望建立一个快速的API,以便一些服务可以相互交互。

33240

如何通过Cloudera Manager的API获取集群告警信息

Cloudera Manager的告警功能非常详尽,CDH集群出现的异常、故障信息等都会及时地出现在CM页面上,通过页面可以快速方便地了解到集群运行性状况。...幸运的是,Cloudera对外提供的告警监控API十分全面而详细,它的APi设计也简单易懂。因此本篇文章我们就来简单地了解一下Cloudera Manager的告警和通过API获得告警信息。...告警分为下面几种类型: 1.红色感叹号表示故障,需要立即处理,否则会影响正常使用 2.黄色感叹号表示预警,需要查看,表示可能将会出现故障,但不影响使用 3.红色的设置符号表示错误配置,需要立即处理,否则会影响正常使用...4.黄色的设置符号表示非推荐配置,需要查看并根据实际情况调整,但不影响使用 集群事件可以在CM界面>诊断>事件 查看到,如下: CM界面上的事件分为三个级别: CRITICAL:对应CM界面的红色感叹号告警或者对应...API可以点击CM界面>支持>API文档获取,如下 我们切换到swagger,找到eventsource接口,可以根据接口信息进行调用获取 ?

2.6K61

如何使用Spring和Java配置构建一个REST API

使用@ExceptionHandler 7. 附加的Maven依赖项 8. 总结 1. 概览 本文展示了如何在Spring中配置REST——控制器和HTTP状态响应码、有效负载编排和内容协商的配置。...认识基于Spring的REST Spring框架支持两种创建RESTful服务的方法: 使用MVC 的ModelAndView 使用HTTP消息转换器 ModelAndView这个方法比较老、文档也比较完善...通过提供合理的默认值,在最少配置的情况,让您从RESTful服务中获取到期望的内容。然而,关于文档,它比较新,而且有点浅尝辄止——参考文献并没有尽其所能地将这两种方法之间的区别和联系弄得尽可能清晰。...API的一部分,因此应该只在对应于REST的适当层中使用;例如,如果存在DAO/DAL层,则不应该直接使用上面的自定义异常。...总结 本教程演示了如何使用Spring 4和Java配置来实现一个REST服务,讨论了HTTP响应码、基本内容协商和编排。

2K30

0591-5.16.1-如何通过CM的API 获取集群告警信息

作者:唐辉 1 文档说明 当集群中的服务有故障时,CM的界面上可以直接显示告警,你也可以通过CM的API获取这些信息,本篇文章主要介绍CM的界面告警事件以及如何使用CM提供的API获取集群的告警信息...内容概述 1.文档说明 2.告警介绍 3.事件告警REST API 测试环境 1.CM和CDH版本为CDH 5.16.1 2.操作系统版本为RedHat 7.2 2 告警介绍 在Cloudera Manager...3 事件告警REST API 在CM界面上绝大部分的操作都是有对应的REST API,事件告警信息当然也不例外。API可以点击CM界面>支持>API文档获取,如下: ?...点击查看所有事件: 浏览器输入:http://cmhost:7180/api/v19/events 或者点击上面的Mount Point :/api/v19/events 具体参数如何使用,参考下面Fayson...同样可通过事件的ID来查看某一个事件的详细信息,如下: 对应API为:/events/{eventId} http://cdh4.macro.com:7180/api/v19/events/60f4b4fb-db98

2K42

(译) 如何使用 React hooks 获取 api 接口数据

原文地址:robinwieruch 全文使用意译,不是重要的我就没有翻译了 在本教程中,我想向你展示如何使用 state 和 effect 钩子在React中获取数据。...如果你想查看完整的如何使用 React Hooks 获取数据的项目代码,可以查看 github 的仓库 如果你只是想用 React Hooks 进行数据的获取,直接 npm i use-data-api...它将引导您完成使用React类组件的数据获取如何使用Render Prop 组件和高阶组件来复用这些数据,以及它如何处理错误以及 loading 的。...但是,如果你对错误处理、loading、如何触发从表单中获取数据或者如何实现可重用的数据获取的钩子。请继续阅读。 如何自动或者手动的触发 hook?...目前我们已经通过组件第一次加载的时候获取了接口数据。但是,如何能够通过输入的字段来告诉 api 接口我对那个主题感兴趣呢?(就是怎么给接口传数据。

28.4K20

如何使用mitmproxy2swagger对REST API进行逆向工程分析

这也就意味着,在该工具的帮助下,广大研究人员能够以自动化的形式对REST API进行逆向分析,并捕捉流量数据。 除此之外,该工具还可以支持从浏览器开发者工具导出并处理HAR文件。  ...接下来,我们可以使用下列命令直接将该项目源码克隆至本地: git clone https://github.com/alufers/mitmproxy2swagger.git 除此之外,我们还可以通过...或 ... $ pip3 install mitmproxy2swagger  工具使用  Mitmproxy 首先,通过运行mitmproxy工具来捕捉流量数据,我们建议大家使用mitmweb,也就是内置在...> -o -p 需要注意的是,我们可以直接使用已有的schema,并根据需要来进行自定义扩展。...其中的是需要进行逆向工程分析的目标API的URL基地址前缀,然后可以在mitmproxy中观察请求以及响应数据。

1.3K30

如何使用RESTler对云服务中的REST API进行模糊测试

RESTler RESTler是目前第一款有状态的针对REST API的模糊测试工具,该工具可以通过云服务的REST API来对目标云服务进行自动化模糊测试,并查找目标服务中可能存在的安全漏洞以及其他威胁攻击面...如果目标云服务带有OpenAPI/Swagger规范,那么RESTler则会分析整个服务规范,然后通过REST API来生成并执行完整的服务测试。...这种智能化的方式使RESTler能够探索只有通过特定的请求序列才能达到的更深层次的服务状态,并找到更多的安全漏洞。 RESTler由微软研究团队负责研发,当前该项目仍处于活跃开发状态。.../build-restler.py --dest_dir 注意:如果你在源码构建过程中收到了Nuget 错误 NU1403的话,请尝试使用下列命令清理缓存...: dotnet nuget locals all --clear RESTler使用 RESTler能够以下列四种模式运行: Compile:从一个Swagger JSON或YAML规范生成一个RESTler

4.8K10

0654-6.2.0-如何通过CM API获取集群事件并入库到MySQL

作者:唐辉 文档编写目的 Fayson在本文中介绍如何通过shell 和python 脚本获取CM中重要的告警信息,以便更方便的掌握和分析集群以及集群中节点和服务的健康状况。...测试环境: 1.RedHat7.2 2.CDH6.2.0 3.Python 2.7 4.使用root用户操作 操作步骤 在CM中获取API和event信息 首先需要知道CM 中API...获取告警信息的rest API ,可以通过在CM界面>支持>API 文档 搜索events。...注:由于C6中API页面改版的缘故,在C6点击查看API详情界面使用的Google 的在线JQuery,建议使用V**,否则C6中可能无法查看详情 因为使用rest API 通过curl...,我们可以通过CM API方式用curl 获取数据,并导出到本地文件中,创建event.sh ,内容如下 #!

1.2K10

兰空图床LskyV2如何通过API获取Token?-星泽V社

兰空图床(Lsky Pro)新版本V2图床带来了很多特性,速度也得到明显提升,而且自带API接口,对接博客等网站方便了很多,有关兰空图床(Lsky Pro)V2的介绍请查看 《Lsky Pro兰空图床2.0...-星泽V社》 那既然要使用api接口就要先学会用,)V2版本接口采用 「HTTP 基本验证」的方式验证授权,获取到 token 后,通过设置请求 header 标头来验证请求,所以token的获取就稍微要麻烦一点...接下来就结合我搭建的图床,配合Postman在线工具,来具体演示下如何获取Token 1.首先我们打开图床的接口页面: Images Pro 这里有接口说明,可以大概看一下具体的获取方法。...2、发起请求,生成token 根据接口说明,可以看到我们需要通过api 调试工具发起一个 http post 请求来生成一个 token。...这里我们使用postman调试工具,个人使用基本上是免费的。

3.4K20

全渠道客服中心聊天机器人实战

随着移动应用的流行,有很多消息应用提供了业务API,比如Facebook Messenger、LINE、微信、Skype、Telegram、Viber、Kik、Cisco Spark和Slack。...在面对这么多可选择的API时,企业需要问自己一个问题:“如何让客户与自己更好地进行互动?” 为了给客户提供最高效的互动体验,企业需要实现所有可能的互动渠道。...Incoming Message表示输入消息,Incoming Call会关联我的电话号码,REST API用于处理其他操作。 我想接收短消息和Facebook消息,所以需要做出一些配置。...差不多了,至少可以回复用户的消息了。 主动发消息 在收集了一些用户信息之后,你可能想要主动向这些用户发送消息。这个可以在Twilio Studio中通过调用REST来实现。...我把REST API连接到一个新的Send Message部件: ? 在配置消息时,我将{{flow.data.body}}作为消息的内容,可以在以后添加其他内容。这是新部件的配置信息: ?

4.7K70

0629-6.2-如何使用CM API接口获取集群所有节点内存和磁盘使用情况

API接口获取监控指标,本篇文章Fayson主要介绍如何通过CM API接口获取集群所有节点内存和磁盘使用情况。...2 接口查找及说明 在Cloudera Manager的API列表中未找到一个比较合适的接口来直接获取指定节点内存和磁盘使用情况,最终在API列表中找到了获取时序数据的接口,该接口可以通过传入tsQuery...在上面我们找到通过CM API接口来获取指定tsQuery语句的监控数据,那接下来我们在Cloudera Manager上通过图表生成器来查询需要获取的数据,最终确定tsQuery语句,如下为Fayson...写的两条语句用于满足前面的需求: 获取集群所有节点内存使用情况: select physical_memory_total, physical_memory_used ?...4 总结 1.通过CM时序数据API接口并指定tsQuery语句可以获取到Cloudera Manager界面上所有的监控图表数据。

4.6K50
领券