我正在开发一个项目并且正在编写后端。我决定将其作为rest api实现,因为我需要编写一个Web应用程序以及一个移动应用程序。我有问题了解如何登录用户,因为休息api是无状态的。我已经阅读了一些材料,其中提到了每个请求或Oauth2.0的基本身份验证(发送登录凭据)。不推荐基本身份验证,我不明白为什么我应该使用Oauth2.0,因为没有第三方将使用我的api。我的问题是我应该如何实现登录功能以及标准是什么?
答案 0 :(得分:1)
使用改装或其他包来调用Laravel api
/* prepare httpClient */
httpClient.addInterceptor(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Request orginal = chain.request();
Request.Builder builder = orginal.newBuilder();
builder.addHeader("Accept", "application/json");
if (tools.isAuthorized()) {
builder.addHeader("Authorization", "Bearer " + tools.getAccessToken());
}
builder.method(orginal.method(), orginal.body());
Request build = builder.build();
return chain.proceed(build);
}});
5-调用api并获得响应,然后保存用户令牌。
答案 1 :(得分:0)
您需要为Users表添加唯一的api_token
列。
$table->string('api_token', 60)->unique();
在Laravel 5.4中,api.php
包含API路由,您需要使用开箱即用的中间件 auth:api ,以便您可以通过api_token验证请求
了解更多 http://bootstrapdojo.com/rest-api-laravel-5-4-with-token-authentication/
答案 2 :(得分:0)
我想您可以创建一个REST API,在JSON Web令牌上提供CRUD操作。