#laravel #api #authentication #postman #laravel-middleware
#laravel #API #аутентификация #почтальон #laravel-промежуточное программное обеспечение
Вопрос:
Я создал пользовательскую функцию в промежуточном программном обеспечении, которая возвращает данные после проверки токена заголовка. Это работает нормально, и я могу получить доступ к данным с помощью postman (пожалуйста, проверьте прикрепленный скриншот ниже, взятый у postman). Это код промежуточного программного обеспечения:
public function handle($request, Closure $next)
{
$token = $request->header('APP_KEY');
if ($token != 'XXXX') {
return response()->json(['message' => 'API Key not found!'], 401);
}
return $next($request);
}
Проблема, с которой я сталкиваюсь сейчас, я не могу получить данные с URL браузера. Я пытался http://127.0.0.1:8000/api/?APP_KEY=XXXX
Комментарии:
1. Я думаю, что
APP_KEY
в опубликованном вами коде и URL-адресе будет доступно через$request->input('APP_KEY')
, поскольку это параметр строки запроса (следующий за?
в URL). На самом деле я не знаком с$request->header()
методом, поэтому я не могу сказать, как вы получите к нему доступ с помощью этого.2. Это работает как по волшебству. Спасибо. Извините, я не эксперт в laravel.
3. Нет проблем! Я не уверен, что это «правильно» (имея ключ в таком URL, но, возможно, кто-то еще знает). Рад помочь в любом случае 🙂
4. Что бы это ни решило проблему и спасло меня. Камни с переполнением стека. Спасибо 🙂