2013-05-06 70 views
0

我需要從客戶端應用程序(Java)發送圖像到我的Web服務器(播放框架)。但是,它需要安全 - 不一定像加密一樣,但需要將傳輸分配給​​特定用戶,並且只有客戶端應用程序才能使用它 - 沒有Web瀏覽器或第三方應用程序發送圖像:發佈,放置或json?

我最好使用哪種 - 使用張貼或發送二進制json?

回答

1

您在這裏創建了一個錯誤的選項。首先,你可以POST或者PUT,並且仍然以json(或者XML)的形式發送數據。所以如果你選擇POST或者PUT,你仍然可以使用json。

至於它是安全的,這是你需要檢查你的Web服務器。傳入用戶的憑證以及可能只有應用程序纔有權訪問的唯一標記。然後檢查服務器端的這些參數。如果他們不在那裏,返回一個403(禁止)。

考慮到這一點,我認爲不管你使用PUT還是POST都取決於誰在控制圖片。我的意思是,如果您想讓客戶端應用程序確定此圖片的ID爲123,那麼您應該使用指定的ID執行PUT。

如果您想讓服務器確定圖片的ID實際上是456,您應該在不指定id的情況下進行POST,但將其返回給客戶端應用程序。

+0

謝謝,我在我的webapp中實現了一個登錄系統;當我從我的客戶端登錄時,我得到一個會話cookie,因此推測這足以用於身份驗證部分?但我仍然需要一個應用程序令牌,對吧?它應該是代碼中某個綁定到用戶帳戶的混淆常量,有點像SSH密鑰?最後,我決定只使用POST,所以它會發布到foo.com/upload;什麼阻止某人在瀏覽器中訪問網站? – dextaa 2013-05-06 14:35:40