0.0.5 • Published 2 years ago
@beoks/gpt-mock-api v0.0.5
gpt-mock-api
When the backend with real data is not accessible, mock APIs are a valuable tool for frontend developers. However, creating mock APIs requires time and effort, taking away from the focus on developing core functions. That's where gpt-mock-api comes in, allowing you to generate mock APIs quickly and focus on building the real functionality.
Example
async function test(){
const studentMockAPI = createMockAPI("University Studenet Management",{students : [{name : "foo",email:"email@email.com",grade:4}]});
console.log(await studentMockAPI.get("/get_all_student"));
// {message: "Successfully retrieved data",State:"success",data:{students:[{"name":"foo","email":"email@email.com","grade":4}]}}
console.log(await studentMockAPI.post("/add_student",{name:"bar",email:"bar@bar.com",grade:3}))
// {message:"Student added successfully.",State:"Success",data:{name:"bar",email:"bar@bar.com",grade:3}}
console.log(await studentMockAPI.get("/get_all_student"));
// {"message":"Successfully retrieved all student data","State":"Success", "data": [{"name":"foo","email":"email@email.com","grade":4},{"name":"bar","email":"bar@bar.com","grade":3}]}
console.log(await studentMockAPI.delete("/delete_student(grade=4)"))
// {"message":"Student deleted successfully","state":"success","data":{"name":"foo","email":"email@email.com","grade":4}}
console.log(await studentMockAPI.get("/get_all_student"));
// {"message":"Successfully retrieved student data.","State":"Success", "data":{"name":"bar","email":"bar@bar.com","grade":3}}
console.log(await studentMockAPI.put("/revise_student(grade=3)",{name : "barbar",email : "barbar@bar.com",grade:5}))
// {"message": "Student successfully updated","State": "Success","data":{"name":"barbar","email":"barbar@bar.com","grade":5}}
console.log(await studentMockAPI.get("/get_all_student"));
// {"message": "Successfully returned all students", "State": {}, "data": {"students": [{"name": "barbar", "email": "barbar@bar.com", "grade": 5}]}}
}
Usage
- Create OpenAI API keys (https://platform.openai.com/account/api-keys)
- Set enviromnet value with api key
MacOS/Linux
export OPENAI_API_KEY="YOUR_API_KEY"
Windows
set OPENAI_API_KEY="YOUR_API_KEY"
- Import createMockAPI
import createMockAPI from '@beoks/gpt-mock-api'
- Create Mock API with Context and initial database
This is important for interpret api request
const studentMockAPI = createMockAPI("University Studenet Management",{students : [{name : "foo",email:"email@email.com",grade:4}]});
- Call Any API!
API Response format always looks like this {message: "(.*)",State:"(.*)",data:{(.*)}}
console.log(await studentMockAPI.get("/get_all_student"));
// {message: "Successfully retrieved data",State:"success",da
Option
If you want to set response format user setSuccessResponseFormat
and setFailureResponseFormat
like below.
const API_DESCRIPTION = "University Studenet Management"
const INIT_DB={students : [{name : "foo",email:"email@email.com",grade:4}]}
const RESPONSE_FORMAT = '{status:"{status code}",data:{(.)}}'
const ERROR_RESPONSE_FORMAT='{message : {(.)},status:"{stattus code}"}'
const studentMockAPI = createMockAPI(API_DESCRIPTION,INIT_DB)
.setSuccessResponseFormat(CONDITION)
.setFailureResponseFormat(ERROR_RESPONSE_FORMAT)
Author
Jaeseong Lee, lee01042000@gmail.com