Я выкладываю на службу, используя спрейтеFormData преобразования в формат JSON
var authenticationPipeline: HttpRequest => Future[Authentication] = sendReceive ~> unmarshal[Authentication]
Я имею установку трубопровода, что ожидает возвращения типа аутентификации (случай класса) и распаковать это. Довольно прямо.
При создании запросов я пытаюсь использовать следующий шаблон.
val fD = FormData(Seq(
"grant_type" -> "authorization_code",
"code" -> authorisation_code,
"redirect_uri" -> "http://www.example.com",
"client_id" -> apiClientId,
"client_secret" -> apiClientSecretKey
))
Я отправляю это так.
authenticationPipeline(Post(oauthUrl, fD))
Вопрос заключается в том, что служба я отправляю к возвращает неподдерживаемый тип ошибки средств массовой информации, а при дальнейшем осмотре выглядит как средства массовой информации НТТР enitity в/тип контента в формате JSON и содержание является JSON строка.
У меня есть эта проблема, используя URLEncode и отправляя эту необработанную строку, вручную создав HTTP-запрос, теперь проблема в том, что я запутался с кодировкой, и это просто не очень чистый код. Наверное, я просто не знаю, почему это происходит почти неявно.
Следующие ссылки повлиявшие как я установить это, но не говоря уже о подобных проблем, https://groups.google.com/forum/#!topic/spray-user/JjA2LCLfib8 & Posting application/x-www-form-urlencoded using spray
Любые указатели на то, что я мог бы делать неправильно было бы оценено. Пожалуйста, дайте мне знать, если я опустил какую-либо важную информацию.
Заранее благодарен!