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을 필요로 합니다.
이 명령을 실행하면 패키지가 설치되고 사용할 준비가 됩니다. 아래 스크린샷을 따르세요.
패키지 설정이 끝나면 다음 단계는 데이터베이스용 모델을 생성하는 것입니다. 우리는 직접 데이터베이스에 연결할 하나의 모드와 마이그레이션을 만들 것입니다.
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' => '날짜/시간',
];
}
이제 하나의 컨트롤러를 생성해야 하므로 이 명령을 사용하여 컨트롤러를 생성하십시오.
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으로 응답을 보냅니다.
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, '사용자가 성공적으로 생성되었습니다.');
}
}
이 경로 파일:
마지막으로 프로젝트를 실행하려면 다음 명령을 실행해야 합니다.
PHP 장인 서브
마무리
API는 소셜 네트워크에서 금융 앱에 이르기까지 오늘날 가장 인기 있는 많은 웹사이트와 서비스를 지원합니다. 이 블로그에서는 Laravel의 REST API를 소개했습니다. 이것이 REST API가 무엇이며 어떻게 작동하는지 이해하는 데 기초가 되었기를 바랍니다.
웹 개발 서비스를 찾고 있다면 더 이상 찾을 필요가 없습니다. webdew에서는 숙련된 웹 디자이너와 개발자로 구성된 능동적인 팀을 찾아 비즈니스 웹사이트를 디자인하고 구축할 수 있습니다. 자세히 알아보려면 저희에게 연락하십시오.