我正在尝试在laravel 5.6中构建APIS,并且对于api身份验证,我使用的是laravel基本API令牌身份验证。
对于获取请求或发布请求,我需要在查询参数中传递api_token
。有没有办法可以在标题中传递api_token
而不是url字符串?
我跟着Laravel - Send api_token within the header。
对于GET端点,我的api url就像这样
http://localhost:8000/api/category-list?api_token=YDYsOgkSIOWDdE1NG3Ih1yCkciatOPvtpF1gXTmy8GL1r72mcDEgNDkkZ5jh&Accept=application%2Fjson
对于POST,我的参数是这样的
正如你所看到的,为了获取我需要在url中添加api标记,而对于POST我需要在主体中添加。 如果我在标题中添加api标记,则表示未经授权的访问。
答案 0 :(得分:1)
当您通过标头发送api令牌时,标头的名称应为Authorization
而不是api_token
。
还将令牌Bearer
的类型添加到授权标头。
所以最后标题看起来应该是这样的:
Authorization: Bearer aEzKClugYHJQsr6If48i1y24KneTT7YwMtNrri7JNhGyEIbJv6YP5SrsFXx2