如何访问Laravel Apiato API

oug3syen  于 2023-01-21  发布在  其他
关注(0)|答案(2)|浏览(75)

我尝试进行第一次成功的API调用,但是在HTTP客户端上出现了一个登录屏幕。我创建了一个客户端,并使用grant_type: client_credentials成功地获得了一个令牌。
然后,在发送请求之前,我将令牌添加到我的头中,但我仍然被重定向到登录屏幕。
我是第一次来APIATO,我做错什么了吗?谢谢

h9vpoimq

h9vpoimq1#

如果是第一方客户端,使用...v1/clients/web/login内置的web客户端代理可以无缝登录。使用代理实际上是首选,因为您的oauth密钥不会暴露给应用程序。
假设您已经安装了passport并运行了所有数据库迁移,您可以执行以下操作。
1.首先,如果尚未完成,请通过php artisan passport:install创建passport客户端
1.将密钥添加到.env文件

CLIENT_WEB_ID={id-here}
CLIENT_WEB_SECRET={secret-key-here}

1.更新您的配置缓存,以便通过运行php artisan config:cache来获取上面的新envs。
1.创建用户。如果您启用了注册电子邮件验证require_email_verification=> true,则需要verification_url。此URL与您的.envAPP_URL相同。

POST: {{api-endpoint}}/v1/register
Headers: Accept: application/json
Body
{
    "name": "First Last",
    "gender": "male",
    "birth": "2015-10-15",
    "email": "email@email.com",
    "password": "Password1!",
    "verification_url": "http://{your-domain}/email/verify"
}

1.验证成功后,您可以通过内置的Web客户端代理登录。

POST: {{api-endpoint}}/v1/clients/web/login
Headers: Accept: application/json
Body
{
    "email": "email@email.com",
    "password": "Password1!"
}
s5a0g9ez

s5a0g9ez2#

有一件事我已经面对的是apiato不工作与php工匠webserver.所以,它不会工作,如果你没有一个虚拟主机安装通过nginx或apache.有一个配置api和web路由位于.env
例如:

APP_URL=http://apiato.test
API_URL=http://api.apiato.test

在你的网络服务器配置中(apache或者nginx)为这些url创建一个虚拟主机。
下面是在nginx中设置虚拟主机的配置示例:
Setting up a virtual host on nginx

    • 注意:记住在你的网络服务器配置中启用fpm扩展来运行php。**

希望能管用。

相关问题