私はアラモファを迅速に使用して、httpリクエスト/ポストをサーバーに送信しています。以下は私が迅速に使用したコードです。以下はすぐにAlamofireを使用してポストパラメータを設定する方法
Alamofire.request(.POST, "http://localhost:8080/hello", headers: [ACCESS_TOKEN:token, "Content-Type":"application/x-www-form-urlencoded" ],
parameters:["friend_id" : friendId, "skill_id" : skillId]).response(completionHandler: {
(request, response, data, error) in
print(request)
print(response)
print(data)
print(error)
})
サーバー側で定義されたコードです:私は、迅速なコードを実行すると
@POST
@Path("/hello")
@Produces(MediaType.APPLICATION_JSON)
public Response nominateSkill(@Context HttpServletRequest request, @FormParam("friend_id") long friendId, @FormParam("skill_id") int skillId) {
// ...
}
、私はいつも、サーバー側のエラーメッセージの下になった:
A servlet request to the URI http://localhost:8080/hello contains form parameters in the request body but the request body has been consumed by the servlet or a servlet filter accessing the request parameters. Only resource methods using @FormParam will work as expected. Resource methods consuming the request body by other means will not work as expected.
私は思いますパラメータを正しく設定しなかった迅速なコードによって問題が解決されます。しかし、私はそれらを正しく設定する方法を知らないのですか?