2011-11-14 39 views
0

如果您正在實施將向客戶端發送和接收大型文件的Web服務,那麼最佳做法是什麼?通常我們發送的是JSON對象,但如果我們在JSON對象中包含大量數據有效載荷,則可能會產生問題。我們需要提供JSON數據以及有效載荷,任何人都有類似的經驗?REST風格的Web服務使用JSON上傳/下載大數據

回答

2

您可以在您的JSON響應中嵌入到原始數據的鏈接。例如:

{ 
    title: 'A Really Big File', 
    date: '2011-11-11', 
    file: 'http://example.com/really_big_file.xls' 
} 

這樣,你可以讓客戶來決定他們是否要取消引用大文件或沒有。

+0

史蒂夫,謝謝你,這聽起來不錯,下載方面。但是如果一個客戶端想要上傳一個文件,但是還需要發送JSON數據才能使用它。 – Anthony

+0

哦,我發現這個不錯的帖子:http://stackoverflow.com/questions/4083702/posting-a-file-and-data-to-restful-webservice-as-json – Anthony

0

Base64是這樣做的非常低效的方式,但通用。您可以使用帶特殊參數「multipart/form-data」的HTTP Post-request發送文件。