Передача изображения/файла

469 views
Skip to first unread message

Игорь Мозговой

unread,
Aug 1, 2015, 9:40:13 AM8/1/15
to Golang Russian
Всем привет!!! Подскажите пожалуйста, как передать картинку или любой файл на сервер? Что для этого нужно? возможно использовать какие-то библиотеки? Заранее спасибо!

Алексей Колосов

unread,
Aug 1, 2015, 12:39:52 PM8/1/15
to gola...@googlegroups.com
net/http например, если протокол http нужен.
Формулируйте задачу точнее и попробуйте поискать решение самостоятельно

1 августа 2015 г., 18:40 пользователь Игорь Мозговой <kovur...@gmail.com> написал:
Всем привет!!! Подскажите пожалуйста, как передать картинку или любой файл на сервер? Что для этого нужно? возможно использовать какие-то библиотеки? Заранее спасибо!

--
Вы получили это сообщение, поскольку подписаны на группу "Golang Russian".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес golang-ru+...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.



--
You can contact me by:
     ICQ: 99886999, 53609149
   Skype: alexey.kolosov
You can find me at:

Дмитрий Михайлов

unread,
Aug 1, 2015, 1:55:41 PM8/1/15
to Golang Russian
Вот тут пример есть, всё делается стандартными библиотеками. Там же пример с множественной загрузкой есть. https://www.socketloop.com/tutorials/golang-upload-file

суббота, 1 августа 2015 г., 20:40:13 UTC+7 пользователь Игорь Мозговой написал:

Игорь Мозговой

unread,
Aug 2, 2015, 7:53:33 AM8/2/15
to Golang Russian
Я пытаюсь делать что-то на подобии этого. Но постоянно получаю ошибку "Error": "Bad Content-Type or charset, expected 'application/json'". Взял из примера http://astaxie.gitbooks.io/build-web...t/en/04.5.html Подскажите пожалуйста, что мне нужно исправить? Спасибо!!


package main

import (
"github.com/ant0ine/go-json-rest/rest"
_ "github.com/go-sql-driver/mysql"
"log"
"net/http"
"database/sql"
"fmt"
"io"
"strconv"
"time"
"crypto/md5"
"html/template"
"os"

)

var con *sql.DB

func main() {
var err error
con,err = sql.Open("mysql",/"root:1111@/APIs")
defer con.Close()
if err != nil{
return
}
api := rest.NewApi()
api.Use(rest.DefaultDevStack...)
router, err := rest.MakeRouter( //---------------------
rest.Post("/classes/report",CreatingReport),
)
if err != nil{
log.Fatal(err)
}
api.SetApp(router)
http.HandleFunc("/upload", upload)

log.Fatal(http.ListenAndServe(":8080",api.MakeHandler()))
}

func upload(w http.ResponseWriter, r *http.Request) {
fmt.Println("method:", r.Method)
if r.Method == "GET" {
crutime := time.Now().Unix()
h := md5.New()
io.WriteString(h, strconv.FormatInt(crutime, 10))
token := fmt.Sprintf("%x", h.Sum(nil))

t, _ := template.ParseFiles("upload.gtpl")
t.Execute(w, token)
} else {
r.ParseMultipartForm(32 << 20)
file, handler, err := r.FormFile("uploadfile")
if err != nil {
fmt.Println(err)
return
}
defer file.Close()
fmt.Fprintf(w, "%v", handler.Header)
f, err := os.OpenFile("./test/"+handler.Filename, os.O_WRONLY|os.O_CREATE, 0666)
if err != nil {
fmt.Println(err)
return
}
defer f.Close()
io.Copy(f, file)
}
}

Vladimir Suchkov

unread,
Aug 3, 2015, 7:24:02 AM8/3/15
to Golang Russian
покажите клиент

воскресенье, 2 августа 2015 г., 14:53:33 UTC+3 пользователь Игорь Мозговой написал:
Reply all
Reply to author
Forward
0 new messages