목차
1. Laravel Sanctum을 설치하고 구성하십시오
2. 사용자 모델에 성소 특성을 추가하십시오
3. 인증 경로를 설정하십시오
4. API 경로를 보호하십시오
5. Bearer 토큰으로 요청을 보냅니다
선택 사항 : 토큰 만료 사용자 정의 (성소)
대신 여권을 언제 사용해야합니까?
PHP 프레임워크 Laravel Laravel에서 API를 인증하는 방법

Laravel에서 API를 인증하는 방법

Sep 18, 2025 am 12:26 AM

작곡가를 통해 Laravel Sanctum을 설치하고 파일을 게시 한 다음 마이그레이션을 실행하십시오. 2. Hasapitokens 특성을 사용자 모델에 추가하십시오. 3. Sanctum의 Auth : Sanctum Middleware를 사용하여 API.PHP의 로그인, 로그 아웃 및 사용자 경로를 정의하십시오. 4. 인증을 적용하여 API 경로를 보호하십시오. Sanctum Middleware. 5. 요청을 할 때 허가 헤더에 Bearer 토큰을 포함시킵니다. Laravel Sanctum은 스파 또는 모바일 앱의 간단한 토큰 기반 API 인증에 권장되므로 최소한의 설정으로 가볍고 안전한 솔루션을 제공하며 대부분의 내부 응용 프로그램에 충분합니다. 타사 액세스를 위해 전체 OAUTH2 지원이 필요할 때 대신 Laravel 여권을 사용하십시오.

Laravel에서 API를 인증하는 방법

Laravel에서 API를 인증하려면 일반적으로 Laravel Sanctum 또는 Laravel 여권을 사용하는 것이 포함됩니다. 대부분의 현대식 사용 사례, 특히 스파, 모바일 앱 또는 간단한 토큰 기반 인증의 경우 Laravel Sanctum이 권장되고 간단한 선택입니다. Laravel Sanctum을 사용하여 API 인증을 설정하는 방법은 다음과 같습니다.

Laravel에서 API를 인증하는 방법

1. Laravel Sanctum을 설치하고 구성하십시오

먼저, 작곡가를 통한 Sanctum :

 작곡가는 Laravel/Sanctum이 필요합니다

그런 다음 성소 구성 및 마이그레이션 파일을 게시하십시오.

Laravel에서 API를 인증하는 방법
 PHP Artisan 공급 업체 : 게시 -provider = "Laravel \ Sanctum \ Sanctumserviceprovider"

마이그레이션을 실행하여 개인 액세스 토큰 테이블을 만듭니다.

 PHP 장인 이주

2. 사용자 모델에 성소 특성을 추가하십시오

User 모델이 HasApiTokens 특성을 사용하는지 확인하십시오.

Laravel에서 API를 인증하는 방법
 Laravel \ Sanctum \ Hasapitokens를 사용하십시오.

클래스 사용자는 authenticatable을 확장합니다
{
    Hasapitokens 사용;

    // ...
}

3. 인증 경로를 설정하십시오

routes/api.php 에서 로그인, 로그 아웃 및 사용자 종료점을 정의하십시오.

 Illuminate \ http \ request를 사용하십시오.
Illuminate \ support \ Facades \ Auth를 사용하십시오.

route :: post ( '/login', function (요청 $ 요청) {
    $ credentials = $ request-> 만 ( '이메일', '비밀번호');

    if (auth :: 시도 ($ credentials)) {
        $ user = auth :: user ();
        $ token = $ user-> createToken ( 'api-token')-> plentextToken;

        return response ()-> json ([ 'token'=> $ token]);
    }

    return response ()-> json ([ 'error'=> '무단'], 401);
});

Route :: Middleware ( 'Auth : Sanctum')-> group (function () {
    route :: get ( '/user', function (요청 $ 요청) {
        return $ request-> user ();
    });

    route :: post ( '/logout', function (요청 $ 요청) {
        $ request-> user ()-> currentAccessToken ()-> delete ();
        return response ()-> json ([ 'message'=> 'loged']);
    });
});

4. API 경로를 보호하십시오

인증이 필요한 경로를 보호하기 위해 auth:sanctum Middleware를 사용하십시오.

 Route :: Middleware ( 'Auth : Sanctum')-> get ( '/protected-data', function (요청 $ 요청) {
    return response ()-> json ([ 'data'=> '이것은 보호됩니다!');
});

5. Bearer 토큰으로 요청을 보냅니다

프론트 엔드 또는 클라이언트로부터 요청을 할 때는 Authorization 헤더에 토큰을 포함시킵니다.

 /API /사용자를 얻습니다
권한 부여 : Bearer 1 | 당신의 길이 -Api-token
수락 : Application/JSON

이 토큰을 프론트 엔드에 단단히 보관할 수 있습니다 (예 : 설정에 따라 LocalStorage 또는 Secure HTTP 전용 쿠키).


선택 사항 : 토큰 만료 사용자 정의 (성소)

기본적으로 성소 토큰은 만료되지 않습니다. 만료를 추가하려면 토큰 생성을 사용자 정의해야합니다. 한 가지 방법은 데이터베이스에서 만료 필드를 수동으로 설정하고 요청 중에 확인하는 것입니다.


대신 여권을 언제 사용해야합니까?

다음과 같은 경우 LaRavel 여권을 사용하십시오.

  • 완전한 OAUTH2 지원 (예 : 타사 클라이언트, 인증 코드, 새로 고침 토큰)이 필요합니다.
  • 타사 개발자를위한 공개 API를 구축하고 있습니다.

여권은 더 무겁고 복잡합니다. 내부 API 또는 간단한 토큰 인증의 경우 성소는 충분하고 쉽습니다.


기본적으로 Sanctum은 최소한의 설정으로 Laravel에서 API 요청을 인증하는 가볍고 안전한 방법을 제공합니다. 그것들을 설치하고, 특성을 추가하고, 로그인시 토큰을 만들고, 미들웨어로 경로를 보호하십시오.

위 내용은 Laravel에서 API를 인증하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Stock Market GPT

Stock Market GPT

더 현명한 결정을 위한 AI 기반 투자 연구

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제

Laravel의 파일에 메시지를 로그인하는 방법은 무엇입니까? Laravel의 파일에 메시지를 로그인하는 방법은 무엇입니까? Sep 21, 2025 am 06:04 AM

Laravelusesmonologtomessagesviathelogfacade, witlefaultLogsStoredInstorage/logss/laRavel.log.configureChannelSinconfig/logging.phptocontroloutput; thedefaultStackChannelAggatesmultipleAndlerLerslikesingle, whitesLog

Laravel에서 API를 인증하는 방법 Laravel에서 API를 인증하는 방법 Sep 18, 2025 am 12:26 AM

installlaravelsanctumviacomposerandpublishitsfiles, thenrunmigrations.2.addehasapitokenstraittotheusermodel.3

해충과 함께 Laravel에서 기능 테스트를 작성하는 방법? 해충과 함께 Laravel에서 기능 테스트를 작성하는 방법? Sep 16, 2025 am 06:12 AM

installpestviacomposerandinitializeitinlaraveltoseTestesting.2.createfeateRetesteStests/featureTovalIdateUser-facingintercations-httprequestsanddatabasechangesingpest 's syntax의 简洁 구문.

Laravel에서 전체 텍스트 검색을 만드는 방법은 무엇입니까? Laravel에서 전체 텍스트 검색을 만드는 방법은 무엇입니까? Sep 16, 2025 am 03:42 AM

toimplementfull-textsearchinlaravel, firstAddafull-textIndexintheMiGrationusing $ table-> fullText ([ 'title', 'content']); whenUsewherefullText ([ 'title', 'content'], $ query) Inqueriesforeforficientsection;

Laravel에서 Route Resource Controllers를 사용하는 방법은 무엇입니까? Laravel에서 Route Resource Controllers를 사용하는 방법은 무엇입니까? Sep 24, 2025 am 05:05 AM

Laravel Resource Controller는 RESTFul 라우팅을 통해 CRUD 작업을 신속하게 처리하고 Artisan Command를 사용하여 컨트롤러 및 리소스 경로를 생성하며 단일 코드 라인에서 모든 표준 경로를 생성 할 수 있으며, 이는 작업 제한을 지원하고 미들웨어 및 이름 지정을 추가하며, 라우팅 모델 바인딩을 자동으로 파라미터를 파라미터로 향상시키고 개발 구조를 정리할 수 있습니다.

Laravel에서 Hasmanythrough 관계를 사용하는 방법은 무엇입니까? Laravel에서 Hasmanythrough 관계를 사용하는 방법은 무엇입니까? Sep 17, 2025 am 06:38 AM

AcountryCanaccessAllPostsTroughsUssUshoussUsinghasmanythrough.forexample, withcountries, 사용자 및 포스트 스테이블 링크는 thecountryModelDefinesAhasmanythroughroughlationSphipostviAuser, enableficientindirectDatarectrievalacrosstwoone-to-manyelatio

Laravel 컨트롤러에서 사용자를 리디렉션하는 방법은 무엇입니까? Laravel 컨트롤러에서 사용자를 리디렉션하는 방법은 무엇입니까? Sep 21, 2025 am 05:26 AM

Redirect () 헬퍼 함수를 ​​사용하여 Redirect ()-> Route ( 'home')와 같은 Laravel 컨트롤러에서 리디렉션을 실현하여 지정된 경로로 점프하고 지정된 URL로 리디렉션 ( '/dashboard'), reidirect ()-> read ()를 이전 페이지로 반환하고 sectain ()를 유지하고 ()를 유지하고 ()를 사용하여 세션 메시지를 전달합니다. 유지 관리 가능성을 향상시키기 위해 명명 된 경로를 사용하는 것이 좋습니다.

Laravel Sanctum으로 API 인증을 구현하는 방법은 무엇입니까? Laravel Sanctum으로 API 인증을 구현하는 방법은 무엇입니까? Sep 19, 2025 am 04:08 AM

ToimplementApiAuthenticationwithlaravelsanctum, youneedtosetuptoken 기반 Authenticaticationathathallowsspas, mobileApps 및 third-partyservicestosecureLycessyourapi.sanctumprovidesalightweightighiSibescan

See all articles