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

HTTP API 设计指南HTTP API 设计指南

HTTP API 设计指南 前言 这篇指南介绍描述了 HTTP+JSON API 的一种设计模式,最初摘录整理自 Heroku 平台的 API 设计指引 Heroku 平台 API 指引。...这篇指南除了详细介绍现有的 API 外,Heroku 将来新加入的内部 API 也会符合这种设计模式,我们希望非 Heroku 员工的API设计者也能感兴趣。...我们假设你熟悉基本的 HTTP+JSON API 设计方法,所以本篇指南并不包含所有的 API 设计基础。...最小化路径嵌套 在一些有父路径/子路径嵌套关系的资源数据模块中,路径可能有非常深的嵌套关系,例如: /orgs/{org_id}/apps/{app_id}/dynos/{dyno_id} 推荐在根(root...保证响应JSON最小化 请求中多余的空格会增加响应大小,而且现在很多的HTTP客户端都会自己输出可读格式("prettify")的JSON。

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

    搞懂gRPC支持HTTP进行双协议通信

    3)生态集成:兼容现有工具链(如 API 网关、监控、日志、Postman 调试)。 4)渐进式迁移:允许旧系统逐步迁移到 gRPC,无需一次性重构。 如何实现双协议支持?...方式二:双协议服务端 部分框架(如 go-zero、.NET Core gRPC-HTTP API)允许服务端同时监听 gRPC 和 HTTP 端口,并自动处理协议转换。...协议实战 这篇文章我们就来分享一下使用gRPC API Gateway插件,通过反向代理实现双协议的支持,大致会分为以下几个步骤: 1)定义RPC接口:引入gRPC API Gateway模块定义RPC...通过协议转换层、双协议框架或基础设施网关,开发者可以在保留 gRPC 内部通信优势的同时,对外提供易用的 HTTP 接口。...未来,随着 HTTP/3 和 gRPC-Web 的普及,跨协议支持将更加高效,但“双协议适配”仍是微服务设计中的重要模式。

    90210

    nodejs核心api-http模块

    1.什么是HTTP模块 我们知道传统的HTPP服务器会由Aphche、Nginx、IIS之类的软件来担任,但是nodejs并不需要,nodejs提供了http模块,自身就可以用来构建服务器,而且http...大部分的node使用者,都是用node来做Web API的,而HTTP模块是提供Web API的基础。为了支持所有的HTTP应用,node中的HTTTP模块提供的API是偏向底层化的。...http服务器 let http = require("http"); http.createServer(function(req,res){ res.writeHead(200,{...http.IncomingMessage http.IncomingMessage是HTTP请求的信息,是后端开发者最关注的内容,一般由http.Server的request事件发送,并作为第一个参数传递...通过HTTP模块http.IncomingMessage 类的.method属性 const http = require("http"); let server = http.createServer

    3K20

    HTTP中的API是什么?

    本文将介绍HTTP中的API,探讨API和HTTP的结合以及API的常见用途。 什么是API? API是应用程序接口的缩写,它定义了软件组件之间的通信规范。...HTTP中的API HTTP协议 HTTP是一种用于传输超文本的协议,它是Web应用程序通信的基础。HTTP协议使用客户端-服务器模型,在客户端发起请求后,服务器会返回相应的响应。...API和HTTP的结合 在HTTP中,API被用于定义Web服务的接口。通过HTTP API,应用程序可以以HTTP请求的形式调用其他应用程序或服务提供的功能。...常见的HTTP API包括RESTful API和SOAP API。...通过HTTP API,开发人员可以以HTTP请求的形式调用其他应用程序或服务提供的功能。API的常见用途包括数据交换、功能扩展、第三方集成和微服务架构。

    2.4K10

    Android中HTTP相关的API

    Android中大多数应用都会发送和接受HTTP请求,在Android API中主要由两个HTTP请求的相关类,一个是HttpURLConnection,另一个是Apache HTTP Client。...Apache HTTP Client DefaultHttpClient和同类的AndroidHttpClient都是可扩展的类。它们有大量且灵活的API,适用于网页浏览器开发。...但是繁多的API的现实下,对其改善与保持兼容性不可得兼,明显Android团队的精力已然不在Apache HTTP Client。...这个类虽然一开始比较简陋,但是其主要的几个API使得我们更容易进行稳定改善。 连接池污染 在冻酸奶(Android 2.2)之前,HttpURLConnection有着一些烦人的bug。...它API精简实用,默认支持压缩,响应缓存等。最重要的这是Android团队重点投入的,而Apache的版本已经被抛弃了。所以还是使用HttpURLConnection吧。

    1.9K30

    api网关怎么转发http请求 api网关模式的优点

    api网关担任着一个通信互通的桥梁,因此api网关一定要可以承担不同线路的通信需求。进程间的通讯有同步和非同步两种模式,这就要求api网关,针对每一种通讯模式都有处理方法。...api网关怎么转发http请求? api网关怎么转发http请求 api网关怎么转发http请求,可以参考如下内容。...当访问者和客户通过某一个客户入口来发送api访问请求的时候,api网关会进行及时的验证和处理,同时再转发HTTP请求到后台的服务器,得到反馈之后会直接反馈回访问者,并且开放访问权限。...api网关模式的优点 api网关怎么转发http请求已经有了答案,下面再来看一看api网关模式的优点。...以上就是api网关怎么转发http请求的相关内容。 api网关的作用是非常强大的,并且许多建构的api网关可以自定义个性化功能,给当代的互联网平台微服务架构体系带来很大的方便。

    3K30

    推荐5个机器学习API

    但是现在这种情况正在发生改变,正如标准的API简化了应用程序的开发一样,机器学习API也降低了这一领域的门槛,让越来越多的人和企业能够借助技术底蕴深厚的公司所提供的API试水机器学习。...,该平台提供的功能有自然语言处理、推荐引擎、模式识别、计算机视觉以及预测建模等,为了迎合数据科学家的喜好,Microsoft Azure机器学习平台还增加了对Python的支持,用户能够直接将Python...代码片段发布成API。...Google预测API是一个云端机器学习和模式匹配工具,它能够从BigQuery和Google云存储上读取数据,能够处理销售机会分析、客户情感分析、客户流失分析、垃圾邮件检测、文档分类、购买率预测、推荐和智能路由等用户场景...虽然该API有一些UI界面或者算法上的限制,但是却是用户友好和向导驱动的,它为开发者提供了一些可视化工具,让相关API的使用更直观、也更清晰。

    1.3K80

    Laravel API 开发推荐阅读清单

    API 文档神器 Swagger 介绍及在 PHP 项目中使用 - API 文档撰写方案 推荐 Laravel API 项目必须使用的 8 个扩展包 使用 Jwt-Auth 实现 API 用户认证以及无痛刷新访问令牌...开发 API 必读文章 Principles of good RESTful API Design(译:好 RESTful API 的设计原则 )简单易懂,条理清晰,推荐 Best Practices...for Designing a Pragmatic RESTful API(译:RESTful 最佳实践 译文2)有实际的案例 Enchant HTTP API Design Guide(译:HTTP...API 的设计规范 实战经验的总结,具有较强的启发意义 撰写安全合格的REST API 利用好 HTTP 协议所具备的特征 Web 服务编程,REST 与 SOAP REST 与传统的面向服务的接口设计的区别...,由李锟翻译,有经验的同学可以挑战一下 Microsoft REST API Guidelines 微软官方的 REST API 设计指南,值得参考 理解 HTTP 幂等性 讲得很清楚,推荐 浅析远程过程调用

    5.5K70
    领券