2016-08-23 87 views
1

我想知道是否有任何方法在我的Play框架REST API上進行POST調用,而在調用中沒有任何JSON。玩Scala - 有沒有JSON的POST方法

我正在用,如果你在數據庫中創建任何東西,那麼你需要做一個POST調用邏輯的API,但我還是有這個問題出現權當它擊中API:

Bad Request 

     For request 'POST /promotions/add/user?userId=41375&promoId=24265' 
[Invalid Json: No content to map due to end-of-input at [Source: [email protected]; line: 1, column: 0]] 

有沒有辦法,或者我必須在GET中更改調用,或者使用JSON中的userId和promoId進行調用,我希望避免。

謝謝!

+0

你可以發佈你的動作代碼嗎? – Mikesname

+0

def addPromotionToUser(userId:Option [String],promoId:Option [String]):Action [AnyContent] = Action.async {...} 我問任何JSON的方法 – guigui

回答

0

請檢查您是否在請求中設置了任何內容類型。還要檢查如何在操作方法內處理請求,例如使用request.body.as<XXX>等。

如果您的POST請求未使用json作爲數據負載,則可以使用表單從請求中綁定。在這種情況下,請確保您已在請求中設置了Content-Type: application/x-www-form-urlencoded。有時,請求中設置適當的內容類型標題無關緊要。這完全取決於POST請求如何由控制器操作方法/ API端點處理。

+0

哦,那只是簡單那在呼叫中的內容類型-_-非常感謝你!現在確實有效! :) – guigui