feat: end point for getting image similarity

This commit is contained in:
2025-05-13 17:05:46 +01:00
parent 85ff91a11b
commit 9ae7fe3077

View File

@ -186,6 +186,36 @@ func main() {
w.Write(jsonImages)
})
r.Get("/image-similar/{id}", func(w http.ResponseWriter, r *http.Request) {
// TODO: authentication
stringImageId := r.PathValue("id")
imageId, err := uuid.Parse(stringImageId)
if err != nil {
w.WriteHeader(http.StatusForbidden)
fmt.Fprintf(w, "You cannot read this")
return
}
similarImages, err := imageModel.GetSimilar(r.Context(), imageId)
if err != nil {
log.Println(err)
w.WriteHeader(http.StatusNotFound)
fmt.Fprintf(w, "Something went wrong")
return
}
jsonImages, err := json.Marshal(similarImages)
if err != nil {
log.Println(err)
w.WriteHeader(http.StatusBadRequest)
fmt.Fprintf(w, "Could not create JSON response for this image")
return
}
w.Write(jsonImages)
})
r.Post("/image/{name}", func(w http.ResponseWriter, r *http.Request) {
imageName := r.PathValue("name")
userId := r.Context().Value(USER_ID).(uuid.UUID)