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

Laravel API 开发推荐阅读清单

讲讲我最近用 Laravel 做的一个 App 后端项目 Laravel Passport API 认证使用小结 关于 RESTful API 设计的总结 Laravel 5.5 使用 Passport...,启发性强 最佳实践:更好的设计你的 REST API 了解 REST 实现缓存的过程 Thoughts on RESTful API Design REST API Tutorial 全方位介绍 REST...,由李锟翻译,有经验的同学可以挑战一下 Microsoft REST API Guidelines 微软官方的 REST API 设计指南,值得参考 理解 HTTP 幂等性 讲得很清楚,推荐 浅析远程过程调用...RPC 告诉你什么是 RPC httpstatuses 一眼看完所有常用的 HTTP 状态码,还可以看详细含义 json-api 对 API 应该如何利用好 JSON 的一些建议 介绍 JSON 无论如何都应该读一遍...》 ,主要专注于 App 和 SPA 后端 API 服务器实战开发。

5.6K70

边缘服务的一致性、耦合和复杂性

这些 API 的设计不存在一致性,以致于难以看出它们是干什么用的。REST 在 API 设计中引入了一致性。...当你将 REST 与 OpenAPI 结合在一起时,开发人员很容易就知道如何使用你的 API。 一个基本的新闻源 RESTful API Swagger 规范。...当用户导航到一个 Web 页面或链接到单页应用程序 (SPA) 或移动应用程序的某个视图时,前端应用程序需要调用后端服务来获取渲染视图所需的数据。...为了节省连接资源,SPA 可能会为所有类型的推送通知打开单个 WebSocket,允许每一条消息的格式之间存在巨大差异。...4 现代技术栈 大约在六年前,我发现了一种所谓的 BFF 边缘服务。客户端应用程序不会直接调用数据服务,而是通过中间服务来调用,中间服务专门用来满足客户端应用程序的需求。

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

    什么是微服务?

    此应用程序应该可以使用移动应用程序,客户端单页应用程序(SPA)(在浏览器中运行)以及直接通过REST接口访问,而移动和SPA接口依赖于REST API。...: 移动应用程序:通过API网关/代理使用REST接口 基于浏览器的SPA:通过API网关/代理服务器来使用REST接口 REST接口:消耗并生成JavaScript对象表示法(JSON)资源的超文本标记语言...(HTTP)REST接口; 对于我们的微服务实现,每个服务都将拥有自己的REST接口,并且将使用API​​网关将这些单独的API组合成明显独特的REST API 将所有这些分区和接口组合到一个应用程序中...例如,如果我们将系统组合到单个应用程序中,我们将共享一个进程空间,并且在服务之间进行调用与向内存中的另一个对象进行方法调用一样无足轻重。...通过微服务,我们现在负责确保服务之间的消息映射正确,允许每个服务通过各自的REST API彼此通信。

    1.1K30

    使用 OAuth 实现大型网站现代化的 5 个步骤

    Web 后端还必须管理许多 API 路由。 开发人员可能知道如何将大型代码库重构为多个应用程序。但是,这样做还需要更改 Web 后端的部署和 cookie 安全性。...在以下流程中,OAuth Agent 代表 SPA 调用授权服务器并发布 cookie。...在此期间,网关允许您混合和匹配 Web 架构样式,并在需要时将它们暴露在相同的基本 URL 上。...因此,此应用程序继续使用服务器端呈现 (SSR) 来同时返回 HTML 和公共数据。它可以暴露在不需要 cookie 的网关路径上。...当您仅出于代码大小和生产力原因将一个应用程序拆分为多个 SPA 时,可以在这些应用程序之间共享相同的 cookie。这是通过在同一域中使用不同路径托管 SPA 来完成的。

    44310

    一文读懂微前端架构

    这些还远远只是一小部分,你还需要了解: 你需要有网络的基本知识,和常见的API接口例如HTTP/REST/GraphQL 你需要知道浏览器的兼容性,什么IE,Chrome,Safari,Firefox,...,微服务允许后端体系结构通过松散耦合的代码库进行扩展,每个代码库负责自己的业务逻辑,并公开一个API,每个API均可独立部署,并且各自由不同的团队拥有和维护。...服务端微前端的支持工具有:Mosaic,PuzzleJs,Podium,Micromono等。 好了,说了这么多我相信你是一脸懵逼的,到底怎么实现的?我们抛开架构不说,来看看到底如何实现吧。...SPA是一个Web应用程序,仅包含一个HTML页面。提供动态更新,它允许在不刷新页面的情况下与页面进行交互。...每个应用程序必须知道如何从DOM引导,安装和卸载自身。传统SPA和Single-SPA应用程序之间的主要区别在于,它们必须能够与其他应用程序共存,因为它们各自没有自己的HTML页面。

    3.6K70

    Web 应用开发进化论

    对于在路由级别进行代码拆分的 SPA,每次导航都会请求新的 JavaScript 文件。 我们仍然可以调用这个单页应用还是回到多页应用程序?你会看到这些术语之间的界限会慢慢变得不太清晰了......渲染静态内容很好,但我们如何渲染动态内容,如博客文章,如果只提供 JavaScript(和HTML)如何将完全由客户端渲染接管的 SPA 时 和 Web 服务器进行交互呢?...客户端 - 服务器通信 传统的全栈应用程序使用 REST 作为其 API 规范;它采用 HTTP 方法进行 CRUD 操作。...REST 是一种没有数据格式(过去是 XML,但现在是 JSON)和编程语言的通信范式。 REST 的现代替代方案是用于客户端和服务器之间 API 的 GraphQL。...他们选择哪种 API 规范无关紧要,无论是 REST API 还是 GraphQL API,只要与其服务器交互的客户端了解 API 规范即可。

    5.9K10

    OAuth 详解 什么是 OAuth?

    它们的行为与您的传统 Web 应用程序不同,因为它们对 API 进行 AJAX(后台 HTTP 调用)。手机也进行 API 调用,电视、游戏机和物联网设备也是如此。...简而言之,REST 是通过网络推送 JSON 数据包的 HTTP 命令。 开发人员构建了很多 API。API 经济是您今天可能在董事会中听到的一个常见流行语。...公司需要以允许许多设备访问它们的方式保护它们的 REST API。在过去,你会输入你的用户名/密码目录,应用程序会直接以你的身份登录。这就产生了委托授权问题。...“我怎样才能允许一个应用程序访问我的数据而不必给它我的密码?” 如果您曾经看过下面的对话框之一,那就是我们正在谈论的内容。这是一个询问是否可以代表您访问数据的应用程序。 ? 这是 OAuth。...SPA 是此流程用例的一个很好的示例。此流程也称为 2 Legged OAuth。 隐式流针对仅限浏览器的公共客户端进行了优化。访问令牌直接从授权请求返回(仅限前端通道)。它通常不支持刷新令牌。

    7.2K20

    开发中需要知道的相关知识点:什么是 OAuth?

    它们的行为与您的传统 Web 应用程序不同,因为它们对 API 进行 AJAX(后台 HTTP 调用)。手机也进行 API 调用,电视、游戏机和物联网设备也是如此。...简而言之,REST 是通过网络推送 JSON 数据包的 HTTP 命令。 开发人员构建了很多 API。API 经济是您今天可能在董事会中听到的一个常见流行语。...公司需要以允许许多设备访问它们的方式保护它们的 REST API。在过去,你会输入你的用户名/密码目录,应用程序会直接以你的身份登录。这就产生了委托授权问题。...“我怎样才能允许一个应用程序访问我的数据而不必给它我的密码?” 如果您曾经看过下面的对话框之一,那就是我们正在谈论的内容。这是一个询问是否可以代表您访问数据的应用程序。 这是 OAuth。...SPA 是此流程用例的一个很好的示例。此流程也称为 2 Legged OAuth。 隐式流针对仅限浏览器的公共客户端进行了优化。访问令牌直接从授权请求返回(仅限前端通道)。它通常不支持刷新令牌。

    2.5K40

    4种主流的API架构风格对比

    (四种 API 架构风格) RPC:调用另一个系统的函数 远程过程调用是一种允许在不同上下文中远程执行函数的规范。RPC 扩展了本地过程调用的概念,并将其放在 HTTP API 的上下文中。...RPC 的紧密耦合使得可伸缩性要求和松散耦合的团队难以实现。因此,客户端要么会担心调用特定端点的带来的任何可能的副作用,要么需要尝试弄清楚要调用的端点,因为客户端不了解服务器如何命名其函数。...多种格式支持:REST 拥有支持多种格式用于存储和交换数据的能力,这是它如今成为搭建公共 API 的主要选择的原因之一。...在用于连接不需要查询灵活性的资源驱动型应用时,REST 是一种非常有效的方法。 GraphQL:仅请求所需要的数据 REST API 需要被多次调用才能返回所需要的资源。...灵活的权限:GraphQL 允许选择性地公开某些功能,同时保留私人信息。而相对应的是,REST 体系架构不能仅显示部分数据,要么是全部数据,要么是没有数据。 3 GraphQL 的不足 性能问题。

    3K30

    4种主流的API架构风格对比

    四种 API 架构风格 1RPC:调用另一个系统的函数 远程过程调用是一种允许在不同上下文中远程执行函数的规范。RPC 扩展了本地过程调用的概念,并将其放在 HTTP API 的上下文中。...RPC 的紧密耦合使得可伸缩性要求和松散耦合的团队难以实现。因此,客户端要么会担心调用特定端点的带来的任何可能的副作用,要么需要尝试弄清楚要调用的端点,因为客户端不了解服务器如何命名其函数。...多种格式支持:REST 拥有支持多种格式用于存储和交换数据的能力,这是它如今成为搭建公共 API 的主要选择的原因之一。...在用于连接不需要查询灵活性的资源驱动型应用时,REST 是一种非常有效的方法。 4GraphQL:仅请求所需要的数据 REST API 需要被多次调用才能返回所需要的资源。...灵活的权限:GraphQL 允许选择性地公开某些功能,同时保留私人信息。而相对应的是,REST 体系架构不能仅显示部分数据,要么是全部数据,要么是没有数据。 GraphQL 的不足 性能问题。

    3K20

    API 架构选哪种?SOAP、REST、GraphQL 与 RPC 全方位对比分析

    四种 API 架构风格 1RPC:调用另一个系统的函数 远程过程调用是一种允许在不同上下文中远程执行函数的规范。RPC 扩展了本地过程调用的概念,并将其放在 HTTP API 的上下文中。...RPC 的紧密耦合使得可伸缩性要求和松散耦合的团队难以实现。因此,客户端要么会担心调用特定端点的带来的任何可能的副作用,要么需要尝试弄清楚要调用的端点,因为客户端不了解服务器如何命名其函数。...多种格式支持:REST 拥有支持多种格式用于存储和交换数据的能力,这是它如今成为搭建公共 API 的主要选择的原因之一。...在用于连接不需要查询灵活性的资源驱动型应用时,REST 是一种非常有效的方法。 4GraphQL:仅请求所需要的数据 REST API 需要被多次调用才能返回所需要的资源。...灵活的权限:GraphQL 允许选择性地公开某些功能,同时保留私人信息。而相对应的是,REST 体系架构不能仅显示部分数据,要么是全部数据,要么是没有数据。 GraphQL 的不足 性能问题。

    34820

    API 架构风格抉择:SOAP、REST、GraphQL 和 RPC 的特性、优势与局限

    四种主要 API 样式比较 一、远程过程调用(RPC) 远程过程调用 (RPC)是一种允许在不同上下文中远程执行函数的规范。...简单来说,这意味着 REST API 的每次响应都会提供链接到所有相关信息的元数据,这些信息与如何使用该 API 有关。这实现了客户端和服务器的解耦。...能够支持多种数据存储和交换格式,是 REST 目前成为构建公共 API 的主流选择的原因之一。 REST 的缺点 没有单一的 REST 结构。构建 REST API 没有绝对正确的方法。...四、GraphQL 仅查询所需数据 它需要多次调用 REST API 才能返回所需的人员信息。因此,GraphQL 的发明就是为了改变现状。 GraphQL是一种描述如何发出精确数据请求的语法。...如何从 GraphQL 端点仅检索所需数据 如今,GraphQL 生态系统正在通过 Apollo、GraphiQL 和 GraphQL Explorer 等库和强大的工具不断扩展。

    1.2K10

    为什么 “大前端” 需要 “微前端”?

    公共依赖如何解决?...由于请求库分散在各个应用角落,升级工作量巨大:需要在所有应用中重新安装依赖、修改调用方式、适配新库;通过统计数据显示,仅前端侧就耗费了一名工程师 一年半的全部时间;这并非个体执行力问题,而是 架构层面缺乏统一治理能力...它允许多个应用(或微前端)之间共享代码和资源,从而支持应用的拆分与按需加载。需要注意的是,Module Federation 解决的核心问题是**“如何在应用之间加载和共享模块”**。...规范化落地 基座应用不仅承担渲染任务,还能负责监控和规范实施,帮助发现和阻止不规范的 API 调用,如未加业务前缀的存储操作、不合规的跳转链接等。...我在做百变AI助手时,就使用了上述基座微前端的架构,能够做到AI生成的代码在各个中平台运行,因为适配宿主环境的能力和子应用调用的能力都是通过基座应用实现的。

    37610

    API架构风格对比:SOAP vs REST vs GraphQL vs RPC

    应该是RPC并没有像REST API那样相对严格的调用规范,因此有些调用会比较难以理解 功能爆炸:由于很容易添加新的功能,因此相比编辑现有的功能,新增的功能可能会导致大量功能重叠,也很难去理解...SOAP的缺点 如今,由于多种原因,很多开发人员对必须集成SOAP API的想法感到不安。 仅支持XML:SOAP消息包含大量元数据,且请求和响应仅支持使用冗长的XML结构。...这使得REST API足够灵活,可以在保持系统稳定的同时,随时间进行演化。 可发现性:客户端和服务端的通信描述了所有细节,因此无需额外的文档来理解如何使用REST API进行交互。...支持多种格式:支持多种格式的数据存储和交互功能也是使REST成为当前流行的构建公共APIs的原因之一。 REST的缺点 没有单一的REST结构:不存在正确地构建REST API的方式。...简单资源驱动的APPs:REST是一种非常有用的方法,可用于连接不需要灵活查询的资源驱动型应用。 GraphQL:仅请求需要的数据 它需要多次调用REST API才能返回所需的内容。

    3.7K11

    ⚡REST 和 SOAP 协议有什么区别?

    与 SOAP 不同,REST 并不规定如何处理 API 信息由于 SOAP 只是一种 Web API 协议,因此 REST API 可以使用 SOAP 协议作为数据传输的标准。...消息格式的灵活性使 REST 更适用于公共 API。## 什么是 SOAP?XML 允许使用自定义的描述性标签来存储和共享信息,这与 HTML 使用的预定义标签不同。...在数据访问和操作方式上,SOAP API 与 REST API 有所区别。REST API 通过资源 URL 来访问数据,而 SOAP API 则是通过调用特定的 API 函数来操作数据。...### 灵活的传输渠道SOAP 支持多种通信协议。REST 仅支持 HTTP。...更多 API 管理及 API 全生命周期相关内容可以在我的 Notion 查看,我将会持续更新:[API 全生命周期管理资料](https://special-icecream-fc4.notion.site

    1.7K00

    Postman、Insomnia、SoapUI:深入探讨全局参数与目录参数

    本文将帮助您了解什么是全局参数和目录参数,为什么它们被视为API调试阶段的“效率工具”,以及它们如何通过具体的案例比较影响项目选择。全局参数:一键配置,适用于所有什么是全局参数?...全局参数是适用于系统中所有或大部分API的公共参数。它们在全局配置中定义,只需要一次设置,便会自动应用到多个API调用中,避免了手动传递的麻烦。...更精细的控制:允许不同模块使用独立的配置,而不影响全局系统设置。实际比较:有无全局与目录参数的差异业务场景:用户文章管理系统场景需求:某公司需要调用一组API来管理用户文章,包括获取文章和添加评论。...,繁琐可用性清晰简洁,专注于接口逻辑难以管理参数,易混乱可扩展性未来扩展时仅需调整参数配置需要修改冗余的代码或调用逻辑安全性与管理集中管理,安全高效的认证分散的认证逻辑,难以维护企业级选择建议:为什么要引入这两种机制...Insomnia一个开源的跨平台API客户端,支持GraphQL、REST、WebSocket等。SoapUI一个著名的开源测试工具,主要用于SOAP和REST服务,提供功能测试和模拟服务的全面功能。

    31010

    构建现代Web应用时究竟是选择传统web应用还是SPA

    今天这篇文章我们就来一起探讨下,构建现代web应用时该如何进行选择。...何时应使用 SPA: 应用程序必须公开具有许多功能的丰富的用户界面。 团队熟悉 JavaScript 或 TypeScript 开发。 应用程序已为其他(内部或公共)客户端公开 API。...请注意,SPA 通常需要实现内置于传统 Web 应用中的功能,例如在反映当前操作的地址栏中显示有意义的 URL(并允许用户将此 URL 存为书签或对其进行深层链接以便返回此 URL)。...SPA 还应允许用户使用浏览器的后退和前进按钮寻找用户意料之中的结果。.../ 应用程序已为其他(内部或公共)客户端公开 API 如果已提供一个 Web API 供其他客户端使用,则相较于在服务器端窗体中复制逻辑,创建一个利用这些 API 的 SPA 实现更加容易。

    1.9K30

    一个经常被忽略的 single-spa 微前端实践

    前言 大家好,我是海怪。了解过微前端的同学应该对 single-spa 这个框架都不陌生,但是我翻看了中文整个社区,发现太少文章是讲 single-spa Demo 实践的。...不过呢,我把这些项目都下下来了,一共有 7 个项目: ├── api # API utils 调用函数 ├── navbar # 导航条组件 ├── people # people 页面组件 ├── plants...(页面/组件/公共函数/公共样式) 引入公共库、微应用的 JS 引入公共库、微应用的 JS 是通过 SystemJS 的 import-map 特性来实现的,比如现在有这个 import-map.json...公共套件更像 utils,这里有 api 和 styleguide 两个微应用。...没错,这里的公共套件真的和微前端没关系,只是 single-spa 将这种公共的库也看成微应用。你要说它是微应用,它也算是个微应用,但是用 SystemJS 的方式来引入,有点脱裤子放P。

    1.5K10

    8种至关重要OAuth API授权流与能力

    公共客户端无法安全存储密钥,比如,通常没有后端的单页面应用程序(Single Page Application,简称SPA)。...举例来说,带着后端的Web应用被视为私有客户端,而单页应用程序被认为是公共客户端。后端可以安全地存储密钥,而SPA开放一切数据。...通过使用其他获取凭据的方法,如动态客户注册,也可以将移动客户端转变成私有客户端。稍后会有更多的描述。 白小白: SPA是一个相对比较难理解的概念,如果与多页面应用中的Ajax调用相比的话。...自省客户端通常是API或者API网关相关形态。自省是一种简单认证调用,客户端发送令牌,服务端响应属于令牌的数据,如过期时间、标题等。...我的理解是,这个检查过程仅发生在资源服务器和授权服务器之间,而这两者相当于同一系统中互相信赖的两方,也就是,都是自己人,因此英文原文是Introspection。

    2.3K10

    【微前端】single-spa 到底是个什么鬼

    另一方面是中文博客对微前端的研究少之又少,很多文章只是简单翻译一下官方文档,读几个API,放个官方的 Demo 就完事了。很少有深入研究到底 single-spa 是怎么一回事的。...钩子只能通过调用 unloadApplication 函数才会被调用 OK,上面 4 个生命周期的回调顺序是 single-spa 可以控制的,我能理解,那什么时候应该开始这一套生命周期呢?...注册子应用 有了上面的了解之后,我们再来看 single-spa 里最重要的 API:registerApplication,表示注册一个子应用。...是完美的轻量微前端主应用,但是就算再压缩主应用的交互,那总得告诉子应用放置的位置吧,那不还得 DOM API 一把梭?...single-spa 调用生命周期•Parcel:组件,和 url 无关,手动调用生命周期•Utility Module:统一将公共资源导出的模块 “重要”概念 •Root Config:指主应用的

    1.5K20
    领券