首页
学习
活动
专区
圈层
工具
发布

REST在许多API使用场景中仍然优于GraphQL

即使在 2024 年,GraphQL 仍然存在一些基本问题。 译自 REST Still Outshines GraphQL for Many API Use Cases,作者 Gil Feig。...我将分解这些问题,以便您更好地决定 GraphQL 是否值得在您的集成中使用。我还将重点介绍为什么 REST 今天是更好的选择,并将继续成为领先的 API 标准。...例如,如果您收到 429 太多请求错误,您可以根据响应中建议的等待时间创建自动重试。 另一方面,GraphQL 要求您的工程师考虑错误键中提供的响应。...由于这些响应不像 REST 中那样标准化,因此它们更难计划和自动处理。 许多工程师都有构建和/或维护 REST API 集成的经验。 各种规模的公司主要使用 REST API。...在竞争的 API 架构能够超越——甚至匹配——REST 对提供者和消费者双方的实用性之前,REST 将继续成为首选。

63410

在 ASP.NET Core 中实现幂等 REST API

幂等性是 REST API 的一个关键概念,可确保系统的可靠性和一致性。幂等操作可以重复多次,而不会更改初始 API 请求之外的结果。...在 API 中实现幂等性有几个好处: 它可以防止意外的重复操作 它提高了分布式系统的可靠性 它有助于处理网络问题并正常重试 在本周的期刊中,我们将探讨如何在 ASP.NET Core API 中实现幂等性...例如,在创建之前检查现有资源可确保重复请求不会导致重复的操作或资源。...并发可能很痛苦,尤其是在高流量 API 中。使用分布式锁的线程安全实现效果很好。当同时收到多个请求时,它可以控制事情。但这应该是罕见的。 对于分布式设置,Redis 是我的首选。...这可以防止滥用幂等密钥并保持 API 的完整性。 在 REST API 中实现幂等性可以提高服务的可靠性和一致性。它确保相同的请求产生相同的结果,防止意外的重复并妥善处理网络问题。

36110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux下常见的web运行环境和控制面板汇总

    通过使用EHCP你可以管理MySQL数据库, 电子邮件帐户 , 域帐户 ,FTP帐户等等。...ISPCP允许你管理样结构域 , 电子邮件帐户 ,FTP帐户 , 数据库自身所有的服务器。...在一分钟内,您可以配置您的服务器,使用域创建用户。 您还可以管理电子邮件 ,FTP,Apache的虚拟主机,统计等等。...GUI是在PHP编码,在Perl和Bash后端。 它也包括如MySQL,Apache的 ,phpMyAdmin的,Postfix和Awstats的项目。...有了它的帮助,你可以管理网站;创建域,用户,数据库等等。 这个小组已经有18年的历史,目前是俄罗斯/独联体国家最受欢迎的控制面板之一,并迅速得到广泛的普及在许多其他。

    7.8K22

    【Rust日报】 2019-05-16:在Rust中创建CC++ API

    Rust rustc成为第一个专注于支持WASM的编译器 Rust 2018 edition发布 Crates.io通过了10亿次下载,拥有超过25,000个crate 现在全世界有超过100个聚会,分布在42...Read More ---- 在Rust中创建C/C++ API #CPP 这篇文章介绍了一些可以帮助自动生成C/C++ API的优秀工具。...比如: bindgen, 可以根据给定的头文件自动创建Rust绑定代码。对C语言比较友好,但是对C++来说,用途有限。因为C++的继承处理比较麻烦。...cbindgen,可以方便地为Rust项目生成C API。它还支持以C++风格输出数据类型和模板等。 cpp,这是一个Rust crate,可以帮忙编写C++ API。它提供了一个cpp!...作者还总结了一些在Rust中创建C/C++API的准则:核心逻辑和FFI层之间应该明确分离,最好把FFI代码置于一个单独的crate中,这样做的好处是设计Rust API不会受到FFI的太多影响。

    1.1K20

    Windows主机控制面板介绍

    今天小编就给大家介绍一Windows主机的Plesk控制面板。   Plesk是Parallels公司旗下的一款专用于管理主机空间的软件,拥有非常丰富的工具套件和强大的管理功能。...在众多主机管理软件中,Plesk控制面板凭借简单易用、稳定的性能和强大的功能得到全球各地用户的认可,尤其是大部份美国主机商为它们的Windows主机安装了Plesk管理面板。   ...Windows主机使用的同样是Plesk控制面板,那么对于新手站长来说,通过Plesk面板能轻松管理网页、查看统计和创建邮件账户等操作,其中最常用的功能如下:   1. 网站管理。...邮件管理。 创建、管理域名邮箱,支持邮箱账户信息修改、邮件转发设置、域名别名设置以及自动回复设置等。   3. 数据库管理。...Plesk确实是一个性能稳定、功能强大的控制面板,大家平时可以多多摸索Plesk面板中的功能。

    2.8K30

    为什么说虚拟主机是个人站长的最佳选择

    网站在现代生活中逐渐扮演着信息传播、信息交流以及文化和服务驿站的角色,其重要性日益突出,因此不管是企业还是个人都有建站的需要。...其实配备Plesk等主机面板的下一代虚拟主机才是个人站长的更佳选择。 1. 下一代虚拟主机通过其配备的Plesk等主机面板实现了功能的升级优化,破解了以往虚拟主机功能限制多的痛点。...以Plesk为例,网站与域名、邮箱、应用程序、文件、数据库、网站用户、帐户、网站统计等各方面的管理都覆盖在内。...提供企业级邮箱功能,除了常规的功能外,还支持多种策略过滤垃圾邮件;支持在移动端上监控和管理服务器,更自由方便;提供全能开发环境,支持最流行的开发语言,可配置PHP、处理程序以及Apache和Nginx指令...综上所述,价廉、易用、全能、快速、稳定的配备Plesk等主机面板的下一代虚拟主机才是个人站长的上选。

    2.8K60

    如何使用 Plesk 控制面板安装和管理WordPress站点

    在plesk上还可以为某个站点单独设置密码,用于从Plesk登陆到WordPress站点的安全凭证。...WordPress工具包中安装插件界面: 站点安全性管理 Plesk的WordPress工具包中包含了“扫描”和“检查安全性”选项。...进入Plesk备份管理器,里面包含了创建备份、手动上传备份文件、移除备份、计划备份,以及FTP存储设置。...在创建备份里,个人很喜欢Plesk的增量备份功能,能够备份自上次备份已被更改的web主机数据(邮件和数据库数据总是会完整备份),很大程度上提高了备份速度和效率。...例如,在“限制管理性访问”可设置制定允许访问的IP地址;“被禁域名”里可设置管理禁止域名;在邮件设置板块中可设置垃圾邮件防护、防病毒等功能;此外,在Plesk中还能对网站防火墙进行设置,能够有效防止网站受攻击及病毒入侵

    2.6K20

    一个全栈SpringBoot项目-Book Social Network

    它提供的功能包括用户注册、安全电子邮件验证、图书管理(包括创建、更新、共享和归档)、图书借阅(检查可用性)、图书归还功能以及图书归还批准。...该应用程序使用 JWT 令牌确保安全性,并遵循 REST API 设计的最佳实践。...作者是ali-bouali 功能 用户注册:用户可以注册一个新帐户。 电子邮件验证:使用安全电子邮件验证码激活帐户。 用户身份验证:现有用户可以安全地登录其帐户。...for Angular Bootstrap 学习目标 通过完成这个项目,学生将学习: 根据业务需求设计类图 实施单一回购方法 使用 JWT 令牌和 Spring Security 保护应用程序 通过电子邮件注册用户并验证帐户...通过 Spring Data JPA 使用继承 实现服务层并处理应用程序异常 使用 JSR-303 和 Spring Validation 进行对象验证 处理自定义异常 实施分页和 REST API

    28700

    2024 主流的开源服务器面板推荐

    Websoft9特色功能:自动化部署:在安装、证书部署、备份整个DevOps过程中采用自动化手段,极大提升工作效率。...用户体验优化:帮助使用者进行用户体验的技术落地规划,解决用户体验中碰到的问题。​2....数据库管理:提供MySQL、MariaDB数据库的管理功能,方便数据库的创建、删除、优化以及备份恢复操作。FTP和SSH:支持创建和管理FTP账户和SSH密钥,方便用户上传文件和进行远程连接。...Plesk:Plesk是一个多功能且易于使用的控制面板,支持Linux和Windows服务器。其灵活性和完全控制使其在基础设施提供商、IT管理员和网络开发人员中非常受欢迎。...其高效的资源使用、API支持、三种访问级别(管理员、经销商和用户)等特点,使其成为一个受欢迎的选择。DirectAdmin的价格通常低于其他控制面板,如cPanel或Plesk,适合预算有限的用户。

    1.2K00

    G Suit 介绍

    利用来自其REST API或谷歌应用程序脚本的表单,这也是支持表单附加组件的技术。 使用Gmail构建各种集成 使用灵活的REST API将Gmail集成到应用程序中。...或者,通过创建一个Gmail附加组件将应用程序集成到Gmail中,用户可以在Gmail中访问应用程序的功能。在Gmail中呈现时,电子邮件标记将普通消息转换为结构化的操作项。...电子邮件审计API 审核域内用户的电子邮件、电子邮件草稿和存档聊天记录,检索帐户登录信息,并下载用户的邮箱。...电子邮件设置API 管理用户级别的电子邮件帐户设置,包括用户邮件设置屏幕中显示的大多数选项。...报告API 在特定的G套件中创建使用报告,如登录频率或用户活动,如管理控制台和谷歌文档。 经销商API 对于由G Suite分销商管理的域,为特性或用户下订单,并协调每月的付款后订阅。

    4.1K20

    高级API、异构图:谷歌发布TF-GNN,在TensorFlow中创建图神经网络

    此前,TensorFlow GNN 的早期版本已经在谷歌的各种应用中使用,包括垃圾邮件和异常检测、流量估计、YouTube 内容标记等。...无论是在现实世界中,还是在我们设计的系统中,图无处不在。一组对象或是不同的人以及他们之间的联系,通常可以用图来描述。通常情况下,机器学习中的数据是结构化或关系型的,因此也可以用图来描述。...我们可以描述每个节点、边或整个图,从而将信息存储在图的每一部分中。此外,我们可以赋予图边缘方向性来描述信息或信息流。 GNN 可以用来回答关于这些图的多个特征问题。...最后,我们可以在边缘级别使用 GNN 来发现实体之间的连接。 TensorFlow GNN TF-GNN(TensorFlow GNN) 提供了在 TensorFlow 中实现 GNN 模型的构建块。...TF-GNN 工作流程组件 TF-GNN 库的初始版本包含许多实用程序和功能,供初学者和有经验的用户使用,包括: 高级 keras 风格的 API 用于创建 GNN 模型,可以很容易地与其他类型的模型组合

    1.2K10

    MySQL Router Restful API (中文)

    --- 路由器帐户设置 身份验证在 mysqlrouter.conf 下配置为 'backend=metadata_cache' [http_auth_backend:default_auth_backend...使用具有用户创建权限的 root 或管理员登录 MySQL 服务器节点(主节点),并创建用户帐户(例如:myapiuser) - 这是一个虚拟帐户,将在第 3 步中删除。...创建用户帐户条目 - 密码是来自 mysql.user 的authentication_string。...以下SQL是在路由rest用户表account“v2_router_rest_accounts”创建用户名='myapiuser'。可以根据您的设置进行更改。...例如,检查路由器状态 - https://Router IP:8443/api/20190715/router/status 输入之前在路由器帐户设置中创建的用户/密码可以访问状态,如下所示: 可以尝试其他

    2.6K20

    使用PLesk+litespeed加速你的wordpress博客

    ) 2.2安装Plesk 由于PLesk官方提供一键安装脚本,所以我们很轻松地就可以安装Plesk(注意必须是干净的系统) sh plesk.com...专业版服务器需要服务器满足(内存<2GB free计划) 4.2申请litespeed的key 具体在litespeed免费购买,一个月免费续期一次,之后会在页面上显示我们所需要的key 4.3转换为...在PLesk的站点PHP上传大小中即可找到 5.2直接导出 现在我假设你已经导出了SQL文件名为1.sql,还有以前wordpress包本体 5.2.1 Plesk自带的phpmyadmin导入 创建数据库...,点击下面的phpmyadmin就可以轻松导入.sql文件(别忘记更换wordpress的数据库的用户名哦) 5.2.2导入wordpress包本体 点击网站与域名-----选择创建的域名----使用文件管理器导入...5.2.3修改wp-config.php 在文件管理器---找到wp-config.php---修改以下几行为你的新数据库名和密码 6.安装redis 6.1直接安装 一般来说直接在shell中安装

    1.3K00

    使用DDD来构建你的REST API,而不是CRUD

    尽管这可以让开发人员觉得理解和开始工作变得简单了许多,是一个很好的起点,但是使用CRUD作为API的起点,我有一个很大的疑问。就是CRUD中的U是我最不喜欢的。...它创建了一种用于描述软件的语言,这种语言是基于被称为实体或聚合的关键的业务对象来描述软件的。...当然,并不是说你必须使用DDD来设计你的REST,但是,由于REST资源可以很好地映射到DDD实体,因此我发现设计REST API特别适合使用DDD。 那么这是什么意思?...对于银行API,明显的领域对象(或DDD术语中的实体)是一个帐户,它为银行帐户建模。我们不应该按照帐户的CRUD模型来定义在银行账户上执行的具体业务操作。以下是一个写操作系列很好的开始: 1....如果你计划将API作为公共端点来公开,那么你就必须在非常长的时间内支持该API。基本上认为它是软件标准的永远。我总是鼓励团队在以后难以改变的事情上花时间,API就是这样的例子。

    2.5K50

    推荐几款好用的REST API工具

    你还可以在每次测试之前调用的 JavaScript(或 CoffeeScript)中创建设置脚本。 它有一些用于解析、解码和编码 URI 的基本内置函数。...购买付费订阅后,团队可以协作并将项目托管在云中。 Talend API Tester 是专用于测试 HTTP 和 REST API 的工具。...断言是在可视编辑器中创建的。 3将 API 推向世界 Apigee 是一个在线平台,你可以通过它的门户为消费者构建、管理、消费 API并公开其功能。...在本文提到的所有在线工具中,Apigee 凭借最优雅的 Web 体验、分析工具、代理创建器和便捷好用的网站生成器脱颖而出。...其主要使用场景有: 通过一个平台构建、托管和管理多个 API 跨多个技术端点消费和编排数据 加快 API 开发 简化现有的 API Linx 在创建或调用内部和外部 REST Web 服务方面特别强大。

    3.1K60

    REST API工具推荐

    你还可以在每次测试之前调用的 JavaScript(或 CoffeeScript)中创建设置脚本。 它有一些用于解析、解码和编码 URI 的基本内置函数。...购买付费订阅后,团队可以协作并将项目托管在云中。 ? Talend API Tester 是专用于测试 HTTP 和 REST API 的工具。...断言是在可视编辑器中创建的。 ? ? 3将 API 推向世界 Apigee 是一个在线平台,你可以通过它的门户为消费者构建、管理、消费 API并公开其功能。...在本文提到的所有在线工具中,Apigee 凭借最优雅的 Web 体验、分析工具、代理创建器和便捷好用的网站生成器脱颖而出。...其主要使用场景有: 通过一个平台构建、托管和管理多个 API 跨多个技术端点消费和编排数据 加快 API 开发 简化现有的 API Linx 在创建或调用内部和外部 REST Web 服务方面特别强大。

    2.9K30

    如何进行微服务的API测试

    然而,在微服务架构中,依赖服务的数量显着增加。在具有数十或数百个服务的微服务环境中,为不同的测试场景创建,管理和以编程方式在不同环境配置之间切换的能力非常重要,并且可以显着减少时间和精力。...它会检查以确保用户的帐户中有足够的资金。如果是这样,它会减少用户帐户中的资金数量,并将事件发布到“帐户更新”事件流。...考虑我们刚刚讨论的Portfolio示例,其中REST API调用告诉Portfolio微服务添加位置。...Invoice微服务从队列中读取事件,创建发票,然后将事件发布到Invoice Created队列,以指示Email微服务使用发票向客户发送电子邮件。...在这种情况下,您不需要使用虚拟服务设置复杂的环境 – 您只需创建发布事件的测试方案并验证是否在响应中创建了正确的事件。

    3.1K20

    REST API面临的7大安全威胁

    互联网安全的话题也被技术博客和论坛讨论得越来越频繁:安全性非常重要,尤其是在REST API的世界中。 根据Jitterbit公司2018年API集成状态报告: APIs 正在改变商业 ?...攻击者可以在客户端(REST API的消费者,受害者的REST API服务器)或者在服务器端(攻击者获得控制你的REST API服务器),他创建了一个流氓,恶意程序。...当一个有害的网站、程序、即时消息、博客或电子邮件使用户的internet浏览器在一个授权站点上执行不必要的操作时,就会发生这种情况。...为您的API创建自动安全测试也很好,这样可以看到没有参数篡改影响您的REST API。...在api中同时使用SSL和TLS,特别是在API公开的情况下。 结论 在开发REST API时,您必须从一开始就注意安全性。考虑使用具有许多内置安全特性的现有API框架。

    2.4K20
    领券