Curl 信号:post后被杀死,服务器冻结
在成功发布一篇文章后,我收到了一条奇怪的消息Curl 信号:post后被杀死,服务器冻结,curl,go,signals,go-gin,Curl,Go,Signals,Go Gin,在成功发布一篇文章后,我收到了一条奇怪的消息 [GIN] 2017/07/18 - 08:43:21 | 200 | 42.729836ms | 127.0.0.1 | POST /api/articles signal: killed 我使用curl制作的帖子是: curl -X POST http://127.0.0.1:8080/api/articles -v --cookie "domain=somelongstring" -F 'title=My t
[GIN] 2017/07/18 - 08:43:21 | 200 | 42.729836ms | 127.0.0.1 | POST /api/articles
signal: killed
我使用curl制作的帖子是:
curl -X POST http://127.0.0.1:8080/api/articles -v --cookie "domain=somelongstring" -F 'title=My title' -F 'content=Some stuff comes here' -F "file=@/home/me/Desktop/random.jpg" -H "Content-Type: multipart/form-data"
旋度响应如下:
> Content-Length: 84289
> Expect: 100-continue
> Content-Type: multipart/form-data; boundary=------------------------47d5c18e46bf271a
>
< HTTP/1.1 100 Continue
< HTTP/1.1 200 OK
< Access-Control-Allow-Origin: *
< Content-Type: application/json; charset=utf-8
< Date: Tue, 18 Jul 2017 06:43:21 GMT
< Content-Length: 28
<
* Connection #0 to host 127.0.0.1 left intact
我看到帖子已经创建,没有错误。在任何get请求之后,我也没有收到这个
信号:killed
,所以我想知道这里可能有什么问题,以及如何修复它?如果你在macOS上,请确保Go和XCode是最新的。不,我在ubuntu上,运行Go 1.8.3。这是在VPS中运行的吗?你的内存有没有可能用完了?在/var/log/kern.log
中有任何相关信息吗?没有,我在我的桌面上,有大量的RAM。我应该在kern.log
中查找什么?你能重复这个问题吗?
func PostArticle(c *gin.Context) {
var err error
userId, userName := getUserId(c)
form, err := c.MultipartForm()
title := c.PostForm("title")
content := c.PostForm("content")
if err != nil {
fmt.Printf("%+v, %+v\n", form, err)
return
}
file, err := c.FormFile("file")
if err != nil {
log.Println(err)
c.String(http.StatusBadRequest, fmt.Sprintf("get form err: %s", err.Error()))
return
}
dir, err := os.Getwd()
if err != nil {
log.Fatal(err)
return
}
filename := path.Join(shared.RandString(6) + path.Ext(file.Filename))
dest := dir + "/static/photos/" + filename
if err := c.SaveUploadedFile(file, dest); err != nil {
c.String(http.StatusBadRequest, fmt.Sprintf("upload file err: %s", err.Error()))
return
}
_, err = shared.Dbmap.Exec("INSERT INTO article (user_id, username, title, content, photo) VALUES (?, ?, ?, ?, ?)", userId, userName, title, content, filename)
if err != nil {
log.Fatal(err)
return
}
c.JSON(http.StatusOK, gin.H{"success": "article is created"})
}