我使用NancyFX來爲Web站點託管我們的REST API。我們在數據庫中,我想更新用戶表:Nancy Web框架中API端點聲明的順序
1)全部用戶更新 - 更新所有領域 2)部分用戶更新 - 更新僅單場
我們使用南希0.7 - 所以目前它沒有PATCH支持 - 我只能用PUT
我定義我的API像
PUT ["/user/{username}"] - for complete update using passed-in user object value
PUT ["/user/{username}/id/{newid}"] - for updating user id only
然而,當我打電話第二API(更新ID只) - 它從來沒有得到被困南希 - 南希總是ca如果PUT [「/ user/{username}」]完全更新用戶,那麼Nancy總是隻調用完整的用戶更新端點。無論如何,我聲明API的順序是什麼。
需要幫助,以便我可以正確使用來自我們客戶端應用程序的PUT使用這兩種API。
這對'@'字符很好 - 但南希在解碼'+'字符時有問題 - 即使我使用URL編碼 - 南希將其解碼爲'空格' –
啊,這不是南希的錯,如果數據是從表單發送的,則加號(+)char是空間的urlencode字符,否則它是更通常的%20。所以如果你的數據有一個加號,那麼Nancy會正確地解碼這個空間。嘗試在Nancy處理程序中對您的數據和單個解碼進行雙重編碼,或使用javascript的encodeURIcomponent()進行編碼。有關更多信息,請參見[URL編碼空格字符:+或%20?](http://stackoverflow.com/a/1634314/776476)。 – biofractal