【发布时间】:2020-07-01 15:26:49
【问题描述】:
我正在使用 Laravel 构建一个 API,并在 android 移动应用程序上使用它。我只希望它被我的应用程序使用,并阻止对公众的访问。无论如何要做到这一点?
【问题讨论】:
我正在使用 Laravel 构建一个 API,并在 android 移动应用程序上使用它。我只希望它被我的应用程序使用,并阻止对公众的访问。无论如何要做到这一点?
【问题讨论】:
您可以使用Middleware 限制对公众的访问。您可以简单地生成令牌并将其传递到标头中,或者使用带有用户名和密码的基本身份验证并在中间件中检查它。
如果任何参数或认证方法没有传入meddleware,只需输入abort(401),它就会返回401 Unauthenticated
希望对你有帮助
【讨论】:
handle(Request $request, $next){} 方法中你可以写:return $next($request)->header('Access-Controll-Allow-Origin', 'https://yoursite.com');,所以只有yoursite.com 将被允许访问该api
为此,您可以使用 Laravel Airlock。
这是它的文档:https://laravel.com/docs/master/airlock
由于问题没有提供代码,我无法为您提供具体的代码示例,但在文档中,它的解释非常好,因此将它与您的应用程序集成应该没有任何问题。
您可以查看这篇文章以获取更多示例:https://medium.com/@JillevdWeerd/app-authentication-with-laravel-airlock-36e3d2027994
希望这会有所帮助。
【讨论】: