猿问

MongoLab 通过 CURL/Golang-http 使用 HTTP PUT

我试图通过他们的 HTTP 接口删除托管在 MongoLab 服务中的 MongoDb 数据库集合中的多个文档。这是我在尝试实现它时使用的 CURL 请求


 curl -H "Content-Type: application/json" -X PUT  "https://api.mongolab.com/api/1/databases/mydb/collections/mycoll?q={\"person\":\"554b3d1ae4b0e2832aeeb6af\"}&apiKey=xxxxxxxxxxxxxxxxx"

我基本上希望从集合中删除具有匹配查询的所有文档。http://docs.mongolab.com/restapi/#view-edit-delete-document 上的 Mongolab 文档建议"Specifying an empty list in the body is equivalent to deleting the documents matching the query."。但是如何在 PUT 请求正文中发送空列表?


这是我用来实现上述 PUT 请求的 Golang 代码


client := &http.Client{}

postRequestToBeSentToMongoLab, err := http.NewRequest("PUT","https://api.mongolab.com/api/1/databases/mydb/collections/mycoll?q={\"person\":\"554b3d1ae4b0e2832aeeb6af\"}&apiKey=xxxxxxxxxxxxxxxxx",nil )

postRequestToBeSentToMongoLab.Header.Set("Content-Type", "application/json") //http://stackoverflow.com/questions/24455147/go-lang-how-send-json-string-in-post-request

responseFromMongoLab, err := client.Do(postRequestToBeSentToMongoLab)

它null在两种情况下都返回(Golang 和 CURL 的 PUT 请求的情况)。如何让它工作以便它删除与查询匹配的所有文档?


繁花如伊
浏览 190回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答