2013-05-10 86 views
6

我們有要求使用ServiceStack API上傳圖像。使用ServiceStack上傳圖像文件

我知道的兩種可能的方式:

1)使用JSON對象上傳文件(使用Base64字符串)。 2)使用「multipart/form-data」

是否有任何其他方式使用ServiceStack上傳文件?在最佳實踐方面哪個更好?

回答

11

在ServiceStack中上傳文件的最佳方式是僅執行正常的HTTP文件上傳,請參閱source codeimgur.servicestack.netfile uploads in RestFiles的示例。

如果您不想發送multipart/form-data,請使用Protocol Buffers support in ServiceStack之類的二進制格式,併發送byte[]以避免以文本格式編碼二進制文件的計算和有效負載開銷。

+1

是的,你只需點擊'Request.Files'。 @mythz,謝謝btw。 – 2013-05-10 15:27:32

+0

我喜歡協議緩衝區。它可以很容易地由各種移動客戶端實施?我正在尋找可供各種移動應用使用的解決方案,而不會爲開發人員帶來太多困難。 – 2013-05-13 00:34:28

+0

@ Black-Baba使用'multipart/form-data'獲得最佳的互操作性,因爲它將允許任何支持它的平臺上的HTTP客戶端能夠將文件上傳到您的服務。 – mythz 2013-05-13 03:43:50