我有一個REST Web服務,當前公開此URL:http:// server / data / media用戶可以POST在其中使用以下JSON:{ "Name": "Test", "Latitude": 12.59817, "Longitude": 52.12873}為了創建一個新的媒體元數據?,F在,我需要能夠與媒體元數據同時上傳文件。最好的方法是什么?我可以引入一個新屬性file,對文件進行base64編碼,但是我想知道是否有更好的方法。還使用了multipart/form-data類似HTML表單的形式,但是我正在使用REST Web服務,并且我希望盡可能使用JSON。
3 回答

九州編程
TA貢獻1785條經驗 獲得超4個贊
我同意格雷格(Greg)的觀點,認為兩階段方法是一個合理的解決方案,但是我會反過來做。我會做:
POST http://server/data/media
body:
{
"Name": "Test",
"Latitude": 12.59817,
"Longitude": 52.12873
}
要創建元數據條目并返回如下響應:
201 Created
Location: http://server/data/media/21323
{
"Name": "Test",
"Latitude": 12.59817,
"Longitude": 52.12873,
"ContentUrl": "http://server/data/media/21323/content"
}
然后,客戶端可以使用此ContentUrl并對文件數據進行PUT。
這種方法的好處是,當您的服務器開始受到海量數據量的限制時,您返回的url只能指向具有更多空間/容量的其他服務器?;蛘撸绻麕挻嬖趩栴},則可以實施某種輪詢方法。
- 3 回答
- 0 關注
- 412 瀏覽
相關問題推薦
添加回答
舉報
0/150
提交
取消