Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Aug 1, 2024. It is now read-only.
/golang_herokuPublic archive

test deploy golang to heroku

NotificationsYou must be signed in to change notification settings

ydhnwb/golang_heroku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a simple restful api project that deployed to heroku. You can access it with this url:

https://golang-heroku.herokuapp.com

Find the tutorial here:

https://www.youtube.com/watch?v=_EAkLIoMCNM

Documentation

health

to check current server is alive:

GET

https://golang-heroku.herokuapp.com/api/check/health

Response (Status: 200)

{   message: "OK!"}

register

Registering a new user

POST

https://golang-heroku.herokuapp.com/api/auth/register

Request Body

{    "name": "Prieyudha Akadita S",    "email": "ydhnwb@gmail.com",    "password": "yudhanewbie"}

Response success (Status: 201)

{    "status": true,    "message": "OK!",    "errors": null,    "data": {        "id": 2,        "name": "Prieyudha Akadita S",        "email": "ydhnwb@gmail.com",        "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiMiIsImV4cCI6MTY1MTgyMDAwMCwiaWF0IjoxNjIwMjg0MDAwLCJpc3MiOiJhZG1pbiJ9.HtnuWlBaevEO3fHAI4McH5W8axvw_3Og47RUI3m9IyI"    }}

Response error (Status : 400) [Depends on what error]

{    "status": false,    "message": "Failed to process request",    "errors": [        "Key: 'RegisterRequest.Name' Error:Field validation for 'Name' failed on the 'required' tag"    ],    "data": {}}

login

Authenticate by email and password

POST

https://golang-heroku.herokuapp.com/api/auth/login

Request body

{    "email": "yudhanewbie@gmail.com",    "password": "yudhanewbie"}

Response Success (Status: 200)

{    "status": true,    "message": "OK!",    "errors": null,    "data": {        "id": 1,        "name": "Prieyudha Akadita S",        "email": "yudhanewbie@gmail.com",        "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiMSIsImV4cCI6MTY1MTgyMTQ0NiwiaWF0IjoxNjIwMjg1NDQ2LCJpc3MiOiJhZG1pbiJ9.2m-r1qrCXhNkAxzK-sb4hL0Pzat3zwOmzktES_uzwts"    }}

Response error, wrong credential (Status: 401)

{    "status": false,    "message": "Failed to login",    "errors": [        "failed to login. check your credential"    ],    "data": {}}

Get Profile

Get current info from logged user

GET

https://golang-heroku.herokuapp.com/api/user/profile

Headers

Authorization: yourToken

Response success (status: 200)

{    "status": true,    "message": "OK",    "errors": null,    "data": {        "id": 1,        "name": "Prieyudha Akadita S",        "email": "yudhanewbie@gmail.com"    }}

Update profile

Update user data who logged in

PUT

https://golang-heroku.herokuapp.com/api/user/profile

Headers

Authorization: yourToken

Request Body

{    "name": "Prieyudha Akadita S",    "email": "ahmadalbar@gmail.com"}

Response success (Status: 200)

{    "status": true,    "message": "OK",    "errors": null,    "data": {        "id": 1,        "name": "Prieyudha Akadita S",        "email": "ahmadalbar@gmail.com"    }}

=============================================

All products (based on user who logged in)

Only shows products by user who logged in

GET

https://golang-heroku.herokuapp.com/api/product

Headers

Authorization: yourToken

Response success (Status: 200)

{    "status": true,    "message": "OK!",    "errors": null,    "data": [        {            "id": 2,            "product_name": "Xiaomi Redmi 10",            "price": 3000,            "user": {                "id": 1,                "name": "Prieyudha Akadita S",                "email": "ahmadalbar@gmail.com"            }        },        {            "id": 3,            "product_name": "Indomie Goreng",            "price": 2500,            "user": {                "id": 1,                "name": "Prieyudha Akadita S",                "email": "ahmadalbar@gmail.com"            }        }    ]}

Create product

Create a product with owner is the user who logged in

POST

https://golang-heroku.herokuapp.com/api/product

Headers

Authorization: yourToken

Request body

{    "name": "Xiaomi Redmi 5",    "price": 3000}

Response success (Status: 201)

{    "status": true,    "message": "OK!",    "errors": null,    "data": {        "id": 1,        "product_name": "Xiaomi Redmi 5",        "price": 3000,        "user": {            "id": 1,            "name": "Prieyudha Akadita S",            "email": "ahmadalbar@gmail.com"        }    }}

Find one product by id

Find product by id

GET

https://golang-heroku.herokuapp.com/api/product/{id}

Headers

Authorization: yourToken

Response success (Status: 200)

{    "status": true,    "message": "OK!",    "errors": null,    "data": {        "id": 1,        "product_name": "Xiaomi Redmi 5",        "price": 3000,        "user": {            "id": 1,            "name": "Prieyudha Akadita S",            "email": "ahmadalbar@gmail.com"        }    }}

Update product

You can only update your own product If you are trying to update someone else product, it will return error.

PUT

https://golang-heroku.herokuapp.com/api/product/{id}

Request body

{    "name": "Xiaomi Redmi 5 Plus",    "price": 5000}

Response success (Status: 200)

{    "status": true,    "message": "OK!",    "errors": null,    "data": {        "id": 1,        "product_name": "Xiaomi Redmi 5 Plus",        "price": 5000,        "user": {            "id": 1,            "name": "Prieyudha Akadita S",            "email": "ahmadalbar@gmail.com"        }    }}

Delete product

You can only delete your own product

DELETE

https://golang-heroku.herokuapp.com/api/product/{id}

Response success (Status: 200)

{    "status": true,    "message": "OK!",    "errors": null,    "data": {}}

About

test deploy golang to heroku

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp