laravel의 REST API는 무엇입니까: 알아야 할 모든 것

게시 됨: 2022-11-03

세상은 완전히 모바일 장치를 사용하고 온라인에서 솔루션을 찾는 용이함으로 바뀌고 있습니다. 웹 디자인과 웹 개발은 오늘날의 세계에서 엄청난 속도로 진행되고 있습니다.

웹사이트 개발에 모바일 앱 개발도 포함되면서 대부분의 수요가 스마트폰으로 바뀌었습니다. 즉, 모바일 앱의 경우 백엔드에는 restful API가 필요합니다.

REST API가 무엇인지 모르셔도 괜찮습니다! 우리는 당신을 덮었습니다.

이 블로그에서는 restful API가 무엇이며 어떻게 작동하는지 설명하겠습니다. Laravel에서 restful API를 개발하는 방법도 설명하겠습니다.

시작하자…

REST API란 무엇입니까?

API는 애플리케이션 프로그래밍 인터페이스로, 한 장치를 다른 장치(예: 배우자)에 연결하는 데 도움이 됩니다. 하나의 웹사이트가 라이브로 있고 이제 하나의 모바일 앱을 구축하려고 하므로 데이터를 장치에 연결하는 API를 만들려면 JSON을 사용해야 합니다. API로만 수행할 수 있도록 장치에 데이터를 전달할 수 있습니다.

때때로 네트워크 communicatREST API 또는 Representational State Transfer API가 필요합니다.

어떻게 작동합니까?

가장 먼저 시스템에 laravel 앱을 설치해야 더 나아가는 데 도움이 되는 laravel 공식 문서를 따를 수 있습니다. 다음은 laravel 애플리케이션을 설치하기 위해 따라갈 수 있는 문서의 링크입니다.

http://laravel.com/

앱을 설치하려면 이 명령을 사용하지만 시스템에 작곡가가 있어야 합니다. 작곡가는 애플리케이션의 모든 종속성을 설치하는 데 도움이 되는 종속성 도구이므로 다음 링크를 따라갈 수 있습니다.

https://getcomposer.org/download/

작곡가를 설치하면 laravel을 다운로드할 수 있습니다. 다음 명령을 사용하십시오.

작곡가 create-project --prefer-dist laravel/laravel laravel-sanctum-auth

프로젝트가 설치되면 .ENV 파일에 데이터베이스 세부 정보를 설정해야 하므로 ENV 파일에 데이터베이스를 채우십시오.

어떻게 작동합니까 다음 단계는 API 패키지를 설치하는 것입니다. 사용할 수 있는 패키지가 많이 있지만 원하는 대로 설치할 수 있습니다.

따라서 패키지를 설치하려면 laravel 문서에 제공된 명령을 따라야 합니다. Sanctum을 사용할 때 다음 명령을 사용합니다.

작곡가는 laravel/sanctum을 필요로 합니다.

  이 명령을 실행하면 패키지가 설치되고 사용할 준비가 됩니다. 아래 스크린샷을 따르세요. 어떻게 작동합니까 2

패키지 설정이 끝나면 다음 단계는 데이터베이스용 모델을 생성하는 것입니다. 우리는 직접 데이터베이스에 연결할 하나의 모드와 마이그레이션을 만들 것입니다.

app/Models/User.php 파일.

<?php

네임스페이스 앱\모델;

Illuminate\Contracts\Auth\MustVerifyEmail을 사용하십시오.

Illuminate\Database\Eloquent\Factories\HasFactory를 사용하십시오.

Illuminate\Foundation\Auth\User를 인증 가능으로 사용하십시오.

Illuminate\Notifications\Notifiable을 사용하십시오.

// 성소

Laravel\Sanctum\HasApiTokens를 사용하십시오.

클래스 사용자는 인증 가능을 확장합니다.

{

HasApiTokens, HasFactory, Notifiable을 사용하십시오.

 

/**

* 대량 할당 가능한 속성.

*

* @var 배열

*/

보호된 $fillable = [

'이름',

'이메일',

'비밀번호',

];

 

/**

* 배열에 대해 숨겨야 하는 속성.

*

* @var 배열

*/

보호된 $숨김 = [

'비밀번호',

'기억_토큰',

];

 

/**

* 기본 유형으로 캐스트되어야 하는 속성.

*

* @var 배열

*/

보호된 $cast = [

'email_verified_at' => '날짜/시간',

];

}

어떻게 작동합니까 3

  이제 하나의 컨트롤러를 생성해야 하므로 이 명령을 사용하여 컨트롤러를 생성하십시오.

PHP 장인 make::컨트롤러 컨트롤러 이름

app/Http/Controllers/API/BaseController.php 파일:

<?php



네임스페이스 App\Http\Controllers\API;

Illuminate\Http\Request를 사용하십시오.

App\Http\Controllers\Controller를 컨트롤러로 사용하십시오.



클래스 BaseController는 컨트롤러를 확장합니다.

{

/**

* 성공 응답 방법.

*

* @return \Illuminate\Http\Response

*/

공개 함수 sendResponse($result, $message)

{

$ 응답 = [

'성공' => 사실,

'데이터' => $결과,

'메시지' => $메시지,

];

 

return response()->json($response, 200);

}



/**

* 오류 응답을 반환합니다.

*

* @return \Illuminate\Http\Response

*/

공개 함수 sendError($error, $errorMessages = [], $code = 404)

{

$ 응답 = [

'성공' => 거짓,

'메시지' => $오류,

];

 

if(!empty($errorMessages)){

$response['data'] = $errorMessages;

}

 

return response()->json($response, $code);

}

}

참고: API를 생성할 때마다 항상 상태 코드와 함께 JSON으로 응답을 보냅니다.

어떻게 작동합니까 4

API의 경우 항상 인증 토큰을 생성합니다. 토큰이 생성되고 확인되면 사용자를 인증할 수 있음을 의미합니다.

<?php

네임스페이스 App\Http\Controllers\API;

Illuminate\Http\Request를 사용하십시오.

App\Http\Controllers\API\BaseController를 BaseController로 사용하십시오.

Illuminate\Support\Facades\Auth를 사용하십시오.

유효성 검사기를 사용하십시오.

App\Models\User를 사용하십시오.

클래스 AuthController는 BaseController를 확장합니다.

{

공개 함수 로그인(요청 $request)

{

if(인증::시도(['이메일' => $request->이메일, '비밀번호' => $요청->비밀번호])){

$authUser = 인증::사용자();

$success['token'] = $authUser->createToken('MyAuthApp')->plainTextToken;

$success['이름'] = $authUser->이름;

return $this->sendResponse($success, '사용자 로그인');

}

또 다른{

return $this->sendError('승인되지 않음.', ['error'=>'승인되지 않음']);

}

}

공개 기능 가입(요청 $request)

{

$validator = 유효성 검사기::make($request->all(), [

'이름' => '필수',

'이메일' => '필수|이메일',

'비밀번호' => '필수',

'confirm_password' => '필수|동일:비밀번호',

]);

if($validator->fails()){

return $this->sendError('오류 유효성 검사', $validator->errors());

}

$input = $request->all();

$input['비밀번호'] = bcrypt($input['비밀번호']);

$user = 사용자::create($input);

$success['token'] = $user->createToken('MyAuthApp')->plainTextToken;

$success['이름'] = $user->이름;

return $this->sendResponse($success, '사용자가 성공적으로 생성되었습니다.');

}

}

이 경로 파일:

어떻게 작동합니까 5 마지막으로 프로젝트를 실행하려면 다음 명령을 실행해야 합니다.

PHP 장인 서브

마무리

API는 소셜 네트워크에서 금융 앱에 이르기까지 오늘날 가장 인기 있는 많은 웹사이트와 서비스를 지원합니다. 이 블로그에서는 Laravel의 REST API를 소개했습니다. 이것이 REST API가 무엇이며 어떻게 작동하는지 이해하는 데 기초가 되었기를 바랍니다.

웹 개발 서비스를 찾고 있다면 더 이상 찾을 필요가 없습니다. webdew에서는 숙련된 웹 디자이너와 개발자로 구성된 능동적인 팀을 찾아 비즈니스 웹사이트를 디자인하고 구축할 수 있습니다. 자세히 알아보려면 저희에게 연락하십시오.