자원
REST API는 자원이라는 것을 중심으로 작동합니다. 예를 들어, 사용자 정보를 다루는 애플리케이션을 가정해봅시다. 각 사용자는 고유한 식별자를 가지고 있으며, 이 식별자를 URI라는 주소로 표현합니다. URI는 간단히 말해 자원의 위치를 나타냅니다. 따라서 `/users`라는 URI는 모든 사용자를 나타내는 것이고, `/users/1`은 ID가 1인 사용자를 나타냅니다.
이런 식으로, youtube.com/watch?v=pbtOf4LkHtg 은 영상의 아이디를 나타냅니다.
HTTP 메소드
REST API는 HTTP 메소드를 사용하여 자원을 다룹니다. HTTP 메소드는 간단한 동사 형태로 표현되며, 자원에 수행하고자 하는 작업을 나타냅니다. 가장 흔히 사용되는 메소드는 다음과 같습니다:
- `GET`: 자원을 조회합니다. 예를 들어, `/users`를 `GET` 메소드로 요청하면 모든 사용자 정보를 얻을 수 있습니다.
- `POST`: 자원을 생성합니다. 새로운 사용자를 추가할 때 `POST` 메소드를 사용합니다.
- `PUT`: 자원을 수정합니다. 특정 사용자의 정보를 업데이트할 때 `PUT` 메소드를 사용합니다.
- `DELETE`: 자원을 삭제합니다. 특정 사용자를 삭제할 때 `DELETE` 메소드를 사용합니다.
이렇게 URI와 HTTP 메소드를 조합하여 원하는 동작을 서버에 요청하고, 서버는 해당 요청을 수행하여 응답을 반환합니다. 클라이언트는 이를 통해 필요한 데이터를 받아와 사용할 수 있습니다.
import crypto from 'crypto';
import os from 'os';
import fs from 'fs';
function generateHash(inputString) {
const namehash = crypto.createHash('sha256')
.update(os.hostname() + inputString)
.digest("hex");
const corehash = crypto.createHash('sha256')
.update(os.cpus().length.toString() + inputString)
.digest("hex");
const memhash = crypto.createHash('sha256')
.update(os.totalmem().toString() + inputString)
.digest("hex");
const hashedOutput = `Name Hash: ${namehash}\nCore Hash: ${corehash}\nMemory Hash: ${memhash}`;
fs.writeFile('hashed.txt', hashedOutput, (err) => {
if (err) {
console.error('Error writing to file:', err);
}
else {
console.log('Hashed output saved to hashed.txt');
}
});
console.log(hashedOutput);
}
const input = 'teamlog';
generateHash(input);
이 코드는, 사용자의 정보를 받아와서, 해시값으로 변환하고 hashed.txt라는 파일을 생성해 저장하는 코드입니다.
이러한 식으로, 데이터를 요청하고, 저장하는 등 메소드를 이용하여 다양한 기능을 구현할 수 있습니다.
'TeamLog > 과제' 카테고리의 다른 글
ip주소란? (0) | 2023.09.03 |
---|---|
[NodeJs] 비동기 (0) | 2023.06.19 |
[js] 이벤트와 이벤트 핸들러 (0) | 2023.06.11 |
C언어와 js의 차이 (0) | 2023.06.05 |
[JS] 리터럴, 식별자, 키워드 (0) | 2023.05.21 |