为桌面应用程序在 laravel 中创建 api 的最佳实践
Best practice for create api in laravel for desktop application
我开发了一个 laravel 网络应用程序,用户可以在其中创建设备维护请求。为此,他们不需要注册。 Web 应用程序计划仅在企业网络内使用。接下来,我想添加一个 windows 应用程序,它将与 laravel api 进行交互。用户还可以在其中创建请求。我会根据电脑的MAC地址,将Windows应用中创建的请求分开。 Windows 应用程序中将没有身份验证。在 laravel 中实现 api 的最佳方法是什么?我需要使用 Laravel Sanctum 还是 Passport?存储一个将嵌入 Windows 应用程序的令牌。换句话说,一个令牌代表所有人。还是最好创建一个没有身份验证的简单 api?
我认为 Laravel Sanctum 会更好,Laravel Passport 是完整的 OAuth2 服务器实现,OAuth2 对 third-party 和有限访问 API 很有用。这意味着它提供了更多控制和处理 API
的标准方法
你可以查看
https://laravel.com/docs/9.x/passport#passport-or-sanctum
https://datatracker.ietf.org/doc/html/rfc6749
希望对您有所帮助
你在这里谈了一些事情。在 Laravel 方面,这很容易。就做一只股票publicAPI。为您的 api 路由创建一个中间件,然后始终使用 MAC 地址作为端点的第三段。
http(s)://mylocalurl.local/api/name-of-api/macaddy/dostuff
现在您知道 computer/device 每次都到达您的端点了。然后你可以做逻辑,如果它不在 MAC Addy 的批准列表中,就给他们 0 信息。我猜他们从 windows 应用程序中永远不会看到端点 url,因为您将返回 JSON 数据?无论如何,这是连接的唯一独特之处,因此您将能够分辨出它是谁,它们何时到达端点以及到达端点时应该做什么。
我开发了一个 laravel 网络应用程序,用户可以在其中创建设备维护请求。为此,他们不需要注册。 Web 应用程序计划仅在企业网络内使用。接下来,我想添加一个 windows 应用程序,它将与 laravel api 进行交互。用户还可以在其中创建请求。我会根据电脑的MAC地址,将Windows应用中创建的请求分开。 Windows 应用程序中将没有身份验证。在 laravel 中实现 api 的最佳方法是什么?我需要使用 Laravel Sanctum 还是 Passport?存储一个将嵌入 Windows 应用程序的令牌。换句话说,一个令牌代表所有人。还是最好创建一个没有身份验证的简单 api?
我认为 Laravel Sanctum 会更好,Laravel Passport 是完整的 OAuth2 服务器实现,OAuth2 对 third-party 和有限访问 API 很有用。这意味着它提供了更多控制和处理 API
的标准方法你可以查看
https://laravel.com/docs/9.x/passport#passport-or-sanctum
https://datatracker.ietf.org/doc/html/rfc6749
希望对您有所帮助
你在这里谈了一些事情。在 Laravel 方面,这很容易。就做一只股票publicAPI。为您的 api 路由创建一个中间件,然后始终使用 MAC 地址作为端点的第三段。
http(s)://mylocalurl.local/api/name-of-api/macaddy/dostuff
现在您知道 computer/device 每次都到达您的端点了。然后你可以做逻辑,如果它不在 MAC Addy 的批准列表中,就给他们 0 信息。我猜他们从 windows 应用程序中永远不会看到端点 url,因为您将返回 JSON 数据?无论如何,这是连接的唯一独特之处,因此您将能够分辨出它是谁,它们何时到达端点以及到达端点时应该做什么。