Sobes.tech
Junior — Middle

Тафсилоти лоиҳаву ё вазифаи охирини касбӣ ё кореро, ки ба он ҳоло ҳалли ёфтаед, мубодила кунед.

sobes.tech AI

Ҷавоб аз AI

Дар охиринии лоиҳам дар Go, ман REST API барои системаи идоракунии вазифаҳоро таҳия кардам. Вазифаи асосӣ сохтани як хидмати боэътимод ва масштабшаванда буд, ки имкон медиҳад вазифаҳоро эҷод кардан, навсозӣ кардан ва нест кардан, инчунин онҳоро бар асоси статус ва афзалият филтр кардан.

Барои ин, ман аз бастаи стандартии net/http барои коркарди дархостҳо ва китобхонаи gorilla/mux барои маршрутгузорӣ истифода кардам. Барои нигоҳдории маълумот, ман PostgreSQL бо ORM GORM истифода кардам.

Масалан, барои идоракунии эҷоди вазифа:

func createTaskHandler(w http.ResponseWriter, r *http.Request) {
    var task Task
    err := json.NewDecoder(r.Body).Decode(&task)
    if err != nil {
        http.Error(w, "Воридоти нодуруст", http.StatusBadRequest)
        return
    }
    if err := db.Create(&task).Error; err != nil {
        http.Error(w, "Намудани вазифа", http.StatusInternalServerError)
        return
    }
    w.WriteHeader(http.StatusCreated)
    json.NewEncoder(w).Encode(task)
}

Ман инчунин middleware барои сабт кардани дархостҳо ва идоракунии хатоҳо татбиқ кардам, ки дастгирӣ ва дебаггингро беҳтар кард.